局域网中找不到计算机没共享可以读其它计算机吗

1、我一共有9台计算机组成局域网
2、其中一台需要与其他8台进行文件读写操作
有源码最好了,刚刚涉足这块,还不是特别清楚。
在网上查了一下,有用WNetAddConnection2函数的,但是我写了之后提示错误,错误如下:
DisplayStatusDlg.obj&:&error&LNK2001:&unresolved&external&symbol&_WNetAddConnection2A@16
Debug/DisplayStatus.exe&:&fatal&error&LNK1120:&1&unresolved&externals
Error&executing&link.exe.
DisplayStatus.exe&-&2&error(s),&0&warning(s)
是不是还需要什么头文件啊?
请高手指点一下。
我没有多少分了,给40吧。谢谢了,着急!!!!
回复讨论(解决方案)
直接读写啊,路径用\\IP\目录的形式
如:\\192.168.1.2\share\1.txt
我这样写的:
NETRESOURCE&param1;&&
param1.dwType&=&RESOURCETYPE_ANY;&&&
param1.lpLocalName&=&NULL;&&&
param1.lpRemoteName&=&(LPTSTR)(LPCTSTR)&\\\\127.0.0.1\\wfreet&;&&&//127.0.0.1
param1.lpProvider&=&NULL;&&&
DWORD&ret&=&WNetAddConnection2(&param1,&(LPTSTR)(LPCTSTR)&&,&(LPTSTR)(LPCTSTR)&W.Xin&,
CONNECT_UPDATE_PROFILE);&&
在Build的时候就出现上诉问题了啊
直接读写啊,路径用\\IP\目录的形式
如:\\192.168.1.2\share\1.txt
麻烦你在给解释一下好吗?
你别用什么WNetAddConnection2
首先,确定在资源管理器里,你能访问到他的共享。
file.Open(&\\\\127.0.0.1\\wfreet\\1.txt&);
file.Read(...);
file.Close();
这种方式我跟多台机器通讯没问题吗?一对多的。
没问题,你走的共享
你别用什么WNetAddConnection2
首先,确定在资源管理器里,你能访问到他的共享。
file.Open(&\\\\127.0.0.1\\wfreet\\1.txt&);
file.Read(...);
file.Close();
我用的这个语句
HANDLE&nhF
//字符变量
//图像调整界面数据获得
nhFile&=&::CreateFile(&1.txt&,GENERIC_READ,0,NULL,OPEN_ALWAYS,0,NULL);
::ReadFile(nhFile,&pImageAdjustSave,sizeof(pImageAdjustSave),&nuBytes,NULL);
CloseHandle(nhFile);
其中文件名处写1.txt就可以,如果写成\\\\127.0.0.1\\wfreet\\1.txt就不可以,为什么?能给解释一下吗?
解决了,结贴了,谢谢你告诉我,我把共享文件夹权限改成完全控制就好了。局域网共享我们这里就以网上邻居能够访问的共享为准。不考虑\\计算机名\或\\IP\来访问的共享。因为这个访问模式透过了工作组和用户匿名共享枚举,所以在\\计算机名\或\\IP\能访问在网上邻居可能不能访问。而从网上邻居能访问它必然也能访问。从现在开始一个一个问题来解决吧:
问题以你打开网上邻居到“查看工作组计算机”到访问“某一主机”失败而出现的错误框来列出,所以只要你对照你的错误框,就可能在这里找到你的问题的答案。
问题列表:根据你在客户端访问共享的错误到下面找答案吧。(由于2000没有仅来宾模式,所以一些要用到仅来宾的方法不能在2000系统上使用)
1:错误提示框为如图1:网络不存在或尚未启动 
2:错误提示框为如图2:此工作组的服务器列表当前无法使用 
3:错误提示框为如图3:Windows无法找到网络路径……请与网络管理员联系 
4:错误提示框为如图4:登录失败:未授予用户在此计算机上的请求登录类型 
5:错误提示框为如图5:拒绝访问 
6:提示框为如图6:弹出密码输入框,并且用户名不能改,默认为“Guest”。 
7:提示框为如图7:弹出输入用户名和密码输入框. 
8:错误提示框为如图8:用户账户限制,可能的原因包括不允许空密码…… 
9:我没看到自己或他人:进入工作组,只有自己或是看不到自己,或看不到共享机子
10:提示框为如图10:找不到网络路径 
=================================
以下是问题解决方案:
=================================
1:错误提示框为如图1:网络不存在或尚未启动 
这是因为你的Workstation服务没有启动,如果这个服务没有启动的话,那么你的工作组将无效,所以解决的方法就是在开始—运行—输入—Services.msc 回车。拉到最下面,把Workstation改为“自动”,然后“启用”,再点应用即可以解决问题。如图所示:9 
2:错误提示框为如图2:此工作组的服务器列表当前无法使用 
  这是因为你的Computer Browser服务没有启动。这个服务是不一定要启动的,不过同一工作组内最少要有一台机子启动此服务,主要功能是维护网络上计算机的更新列表。如果出现此错误对话框,解决方法为:开始—运行—输入—Services.msc 回车。找到Computer Browser服务把它设置为“自动”,“启用”。再点应用即可以解决问题。如图所示:10 
如果没有找到Computer Browser这个服务。说明你的本地连接没有安装“Microsoft 网络客户端”请在网上邻居右键—属性--本地连接—右键属性—添加—客户端-- Microsoft 网络客户端。就可以了。如果出现“本地计算机上的Computer Browser服务启动后又停止了.一些服务自动停止,……”这很可能是因为你开了windows防火墙导致的,请你把开始--设置--控制面板--里面的winodws防火墙关闭就可以了,如果不想关闭可以在防火墙设置上把“不允许例外”钩掉就可以了
3:错误提示框为如图3:Windows无法找到网络路径……请与网络管理员联系 
  这是因为你的Server服务没有启动而造成的,正确的说应该是你没有安装“Microsoft网络中文件和打印机共享”服务造成的。这个服务主要功能就是让你的计算机给网络提供共享服务。解决方法为:开始—运行—输入—Services.msc 回车。找到Server服务把它设置为“自动”,“启用”。再点应用即可以解决问题。如图所示:11 
如果找不到Server服务,那么就是没有安装“Microsoft网络中文件和打印机共享”,请到网上邻居右键—属性--本地连接—右键属性—添加—服务-- Microsoft 网络中文件和打印机共享。就可以了。
4:错误提示框为如图4:登录失败:未授予用户在此计算机上的请求登录类型 
    这是因为你的计算机拒绝了其它计算机从网络访问你的共享的用户导致的。如XP默认是拒绝来宾--也就是Guest用户登录的。解决方法:开始—运行—输入gpedit.msc回车—计算机配置—windows设置—安全设置—本地策略—用户权利指派—双击“拒绝从网络访问这台计算机”—把里面的guest用户删除,就可以了如图12: 
如果你是用别的用户共享,那么看看有没有那个用户名,如果有就删除即可解决问题。
5:错误提示框为如图5:拒绝访问 
  导致这个问题有两个原因:第一:你共享的文件夹访问用户没有权限访问。第二:计算机拒绝SAM账户和共享的匿名枚举。也就是注册表里的RestrictAnonymous子键。
解决方法:
你是仅来宾访问的:那么第一个问题不用考虑。主要解决第二个问题。开始—运行—输入gpedit.msc回车—计算机配置—windows设置—安全设置—本地策略—安全设置—双击“不允许SAM账户和共享的匿名枚举”—改为“已禁用”,如图13: 
此设置要“重新启动计算机”才能生效。
如果你是windows经典访问方式的:那就要先看看你共享文件夹所在那个盘是什么格式的,如果是NTFS的。那么可以看看文件夹—右键属性--安全—有没有Everyone和你共享访问的用户如图14。 
如果没有请点添加—高级—立即查找—选择Everyone确定。就可以了。再打开文件夹—右键属性—共享—权限—看看有没有Everyone和你共享访问的用户。如果没有按上方法添加并给相应权限。再开始—运行—输入gpedit.msc回车—计算机配置—windows设置—安全设置—本地策略—安全设置—双击“不允许SAM账户和共享的匿名枚举”—改为“已禁用”
此设置也要“重新启动计算机”才能生效。
6:提示框为如图6:弹出密码输入框,并且用户名不能改,默认为“Guest”。 
这个情况表示你的共享访问模式为来宾模式。我们有几个解决方法:
(1)    把Guest用户启用。如果没有启用GUEST用户,那么是无法访问网络资源的,可以在我的电脑—右键管理—本地用户和组—用户—双击GUEST用户—如图15: 
把“账户已停用”钩去掉。并保留上面两项。问题就可以解决。也可以到开始—运行—输入gpedit.msc回车—计算机配置—windows设置—安全设置—本地策略—安全设置—“来宾用户状态”—改为“已启用”。
(2)    如果原来已启用GUEST用户,那么就是GUEST用户密码问题。输入密码即可以访问。如果不想用输入密码访问。那么可以在我的电脑—右键管理—本地用户和组—用户—右击GUEST用户—更改密码—输入原密码,新密码不输入。确定即可。
(3)    改“仅来宾”为“经典”模式。到开始—运行—输入gpedit.msc回车—计算机配置—windows设置—安全设置—本地策略—安全设置—“网络访问:本地用户的共享和安全模式”改为“经典”。这样访问就是经典访问模式了,那么就要去解决经典访问模式的问题了。
7:提示框为如图7:弹出输入用户名和密码输入框. 
这个情况说明你的当前访问模式为经典访问模式,有几个解决方案:
(1)    输入共享机子上的用户名和密码即可访问。
(2)    如果你不想用输入密码来访问,那请你把客户机当前用户的密码设和共享机子上相同用户名的密码一致。就可以直接访问了。
(3)    如果你不想用输入密码来访问,那请你把客户机换一个用户名登录系统。再访问。那也不需要密码就可以访问了。
(4)    更改访问模式。把“经典”改为“仅来宾”。到开始—运行—输入gpedit.msc回车—计算机配置—windows设置—安全设置—本地策略—安全设置—“网络访问:本地用户的共享和安全模式”改为“仅来宾”如图16 
这样也可以解决问题。
8:错误提示框为如图8:用户账户限制,可能的原因包括不允许空密码,登录时间限制,或强制的策略限制。 
如果出现这个提示说明你的访问模式为“经典”,同时你的共享机子用户名和你访问机子的用户名相同,并且共享机子此用户没有设置密码。解决方法有几个:
(1)    到开始—运行—输入gpedit.msc回车—计算机配置—windows设置—安全设置—本地策略—安全设置—“账户:使用空白密码的本地账户只允许进行控制台登录”—改为“已禁用”。如图17: 
    即可解决问题。但这样看起来用户没有密码好像不是很安全。建议设置密码。
(2)    更改访问模式。把“经典”改为“仅来宾”。到开始—运行—输入gpedit.msc回车—计算机配置—windows设置—安全设置—本地策略—安全设置—“网络访问:本地用户的共享和安全模式”改为“仅来宾”
(3)    可以更改客户端的当前用户来解决。如新建一个用户用cfanhome,密码为123,用这个用户登录。再在共享机上创建些用户和密码。可以不登录。也就可以解决此问题。
9:我没看到自己或他人:进入工作组,只有自己或是看不到自己,或看不到共享机子
这个情况有几个可能,解决方法:
(1)不同工作组,请把局域网内要共享和访问共享的机子设置在同一工作组内。工作组可以在我的电脑—右键属性—计算机名—更改—里面设置。如图18: 
(2)你的Microsoft 网络客户端或是共享机子的Microsoft 网络客户端没有安装,请在网上邻居右键—属性--本地连接—右键属性—添加—客户端-- Microsoft 网络客户端。就可以了。
10:提示框为如图10:找不到网络路径 
  出现这个情况说明共享机子上开了防火墙或是禁止了端口。请关闭网络防火墙,包括windows自己的防火墙,要不就在自带防火墙里钩掉“不允许例外”的选择框。问题一般就可以解决。
阅读(...) 评论()如何解决Win XP下局域网内无法访问其他计算机的共享? - 川城宅男的日志 - 网易博客
我的图书馆
如何解决Win XP下局域网内无法访问其他计算机的共享? - 川城宅男的日志 - 网易博客
同事下载了《万历首辅张居正》全集,我赶忙点击“开始→运行”输入他的IP:192.168.4.166访问他的电脑,将各集复制到我的电脑中,另一同事也按此法访问我的电脑却不能正常访问。问我何故?我用此法访问他的电脑,却没有此问题,我用下法处理,很快搞掂。
右键“我的电脑→管理→本地用户和组→用户→找到GUSET用户→右键属性”→取消“帐户已停用”。
下面小结一下出现此类问题的解决方法:
如果出现“xxx计算机无法访问,您可能没有权限使用网络资源。请与这台服务器的管理员联系以查明您是否有访问权限”的报错,可以采取以下步骤解决:
1.取消简单文件共享。
打开“我的电脑”,在菜单上选择“工具”→“文件夹选项”→“查看”,清除“使用简单文件共享(推荐)”的选择。
2.启用guest账户。
右键点击“我的电脑”,选择“管理”,选择“本地用户和组”→“用户”,右键点击Guest用户,选“属性”,清除“帐户已停用”的选择。
3.在组策略中设置,安全策略。
开始→运行→gpedit.msc→计算机配置→windows设置→安全设置→本地策略→“用户权力指派”,双击右边的“从网络访问此计算机”,保证其中有Everyone,双击左边的“拒绝从网络访问此计算机”,保证其是空的。
4.选择左边的“本地策略”→“安全选项”,
a.确认右边的“网络访问:本地帐户的共享与安全模式”为“经典”;
b.确认右边的“Microsoft网络客户:为通讯启用数字签名(总是)”为“已停用”;
c.确认右边的“Microsoft网络客户:为通讯启用数字签名(如果服务器允许)”为“已启用”;
d.确认右边的“Microsoft网络服务器:为通讯启用数字签名(总是)”为“已停用”;
e.确认右边的“Microsoft网络服务器:为通讯启用数字签名(如果服务器允许)”为“已启用”。
5.合理设置用户访问权限
网络中很多机器使用NTFS文件系统,它的ACL功能(访问控制列表)可以对用户的访问权限进行控制,用户要访问这些机器的共享资源,必须赋予相应的权限才行。如使用Guest账号访问该机器的CPCW共享文件夹,右键点击该共享目录,选择“属性”,切换到“安全”标签页,然后将Guest账号添加到用户列表中,接着指定Guest的访问权限,至少要赋予“读取”和“列出文件夹目录”权限。如果想让多个用户账号能访问该共享目录,只需要添加Eeryone账号,然后赋予“读取”和“列出文件夹?..
2.在WinXP中设置好其它网络协议
建议,如果你的局域网不用上Internet便只需要安装NetBEUI协议就行了。在小型局域网(拥有200台左右电脑的网络)中NetBEUI是占用内存最少、速度最快的一种协议,NWLink IPX/SPX/NetBIOS兼容协议则应当删除掉。
如果你的局域网要上Internet则必须安装TCP/IP协议。但为了网络的快速访问,建议指定每台工作站的IP地址(除非网络中有DHCP服务器),否则工作站总是不断查找DHCP服务器使网速变慢。
当然,如果网络中只安装TCP/IP协议也能够实现局域网中的互访,但是在网上邻居中要直接看到其它机器就比较困难,必须先搜索到某台机器后才能访问它,这在许多实际网络运用中显得很不方便。
3.其它Windows计算机网络协议的设置
细心的用户可能已经发现,在WinXP的网上邻居中多了一项“设置家庭或小型办公网络”向导,利用该向导可以方便地设置局域网共享、Internet连接和小型局域网。该向导还为连接WinXP的其它Windows电脑提供了一张网络安装软盘。
但是,笔者并不提倡使用这张网络安装软盘。在连接WinXP的其它Windows电脑上,只要安装好NetBEUI协议并设置好网络标志就行了;若要连接Internet则只需安装好TCP/IP协议并指定好IP地址就可以了。这和传统局域网的设置完全一样,建议少使用IPX/SPX兼容协议。
B、彻底禁用WinXP的计划任务
在WinXP和Win2000中浏览网上邻居时系统默认会延迟30秒,Windows将使用这段时间去搜寻远程计算机是否有指定的计划任务(甚至有可能到Internet中搜寻)。如果搜寻时网络时没有反应便会陷入无限制的等待,那么10多分钟的延迟甚至报错就不足为奇了。下面是具体的解决方法。
1.关掉WinXP的计划任务服务(Task Scheduler)
可以到“控制面板/管理工具/服务”中打开“Task Scheduler”的属性对话框,单击“停止”按钮停止该项服务,再将启动类型设为“手动”,这样下次启动时便不会自动启动该项服务了。
2.删除注册表中的两个子键
到注册表中找到主键“HKLM\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\RemoteComputer\\NameSpace”
删除下面的两个子健
{AEA-1069-A2DE-D}
{DC6A-11CF-87-00AA0060F5BF}
其中,第一个子健决定网上邻居是否要搜索网上的打印机(甚至要到Internet中去搜寻),如果网络中没有共享的打印机便可删除此键。第二个子健则决定是否需要查找指定的计划任务,这是网上邻居很慢的罪魁祸首,必须将此子健删除。
为什么运行了“网络安装向导”的Windows XP的共享资源就能被工作组中的其他计算机访
问呢?其实运行“网络安装向导”只是一个表面现象,重要的是运行了它之后就修改了“本地安全
设置”中的两条策略:
1.启用了“账户:客户账户状态”(在“安全设置→本地策略→安全选项”下),这条设
置实际上就是启用了guest账户;
2.在“拒绝从网络访问这台计算机”策略中删除了guest账户,这样其他计算机就能访问共享资源了。
第二个方案很重要,如下:
1.关闭防火墙,针对XPSP1和XPSP2用户,如果自己装的瑞星防火墙,天网等其他防火墙,也请
关闭掉看看.方法如下:
WINXPP本身所自带的网络防火墙没有关闭,请关闭。设置如下:
我的电脑→控制面板→网络连接→本地连接右键属性→高级,就可以看到了,把那个勾去掉,
不用管它的提示
2.修改注册表.方法如下:
对方在注册表里做过一些修改如下:开始 运行regedit回车,找到下列路径
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa右边RestrictAnonymous
的值是否为0
局域网中我可以访问别人的计算机但别人无法访问我
并提示,没有权限,请与该管理员联系出现这个现象是你计算机设置的问题。
打开:开始→控制面板→管理工具→本地安全策略→用户权利指派→拒绝从网络访问此计算机→右键→属性→将其中的GUEST用户删除。右键“我的电脑→管理→本地用户和组→用户→找到GUSET用户→右键属性”→取消“帐户已停用”。(这便是我在前面采用的方法)
TA的推荐TA的最新馆藏[转]&[转]&[转]&}

我要回帖

更多关于 局域网计算机监控 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信