救命呀!!发言就给分!各位大哥给我看看这段程序???

lhh 2002-01-23 02:43:10
我想吧局域网中的某一共享文件夹映射到本地,写了如下的代码,老是连不上,请大家给我看看。
Public Declare Function WNetAddConnection2 Lib "mpr.dll" Alias "WNetAddConnection2A" (lpNetResource As NETRESOURCE, ByVal lpPassword As String, ByVal lpUserName As String, ByVal dwFlags As Long) As Long
Public Type NETRESOURCE
dwScope As Long
dwType As Long
dwDisplayType As Long
dwUsage As Long
pLocalName As String
pRemoteName As String
pComment As Long
pProvider As Long
End Type
Dim lpnet As NETRESOURCE
lpnet.dwType = 0
lpnet.pLocalName = "G:"
lpnet.pRemoteName = "\\des7\lhh share"

If WNetAddConnection2(lpnet, "lhh", "", 1) <> 0 Then '对方是win98,no username
MsgBox "网络连接错误"
Exit Sub
Else
lstFile.Path = strLocalDriveLetter
'MsgBox ("已经成功映射连接上服务器!")

End If
...全文
55 点赞 收藏 8
写回复
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
lhh 2002-01-23
vbnull跟null有什么区别呢?
回复
lhh 2002-01-23
谢谢 dbcontrols(泰山__我偏不走,气死他们!哈哈哈哈) 
我刚刚试了您给的代码,连上了,那我是用WNetCancelConnection 还是WNetCancelConnection2函数来断开连接那?
要是到时候服务器是windows2000,可是要填username 的呀,我再试,恭喜
您中奖了,等着领奖吧。
对大家都又的!
回复
lhh 2002-01-23
首先谢谢大家给我的建议,分是在解决问题字后一定会给的,不过帮忙的朋友越多,每人的分就少了,所以请各位能尽快帮我解决这个问题,给您请安了.
1.lpnet.pLocalName = "G:" '此盘符是对的,我的机器最后一个盘是F:我本来是用函数获得它的,现在我给大家看的是一个简单的,
2.lpnet.pRemoteName = "\\des7\lhh share" '此为des7机器上的一个共享目录"lhh share"有空格的.
3.密码也是对的哦!

回复
juqiang 2002-01-23
这是几点疑问,你看一下:
1、在结构lpNetResource中,你的pRemoteName中的share是什么意思?他共享的文件夹的名字中间有空格吗?如果只是目录lhh,那么写成:\\des7\lhh就可以了。
2、对于lpNetResource中的驱动器符号,应该是你当前系统中不存在的驱动器编号。是不是你的"G:"已经存在了?
3、如果密码不正确,那么,这个函数失败(所以这个函数可以破解局域网机器的共享文件夹密码,呵呵!)
4、建议你调用完成后,迅速调用函数:WNetGetLastError确定错误代码。

呵呵,给分吧!
回复
shiruiyan 2002-01-23
yes,vbnull
回复
dbcontrols 2002-01-23
If WNetAddConnection2(lpnet, "lhh", VbNull, 1) <> 0 Then '对方是win98,no username
回复
lishush 2002-01-23

这个我不太清楚,你网上去找找资料吧!

回复
zyl910 2002-01-23
我发言了!给分!
回复
发动态
发帖子
VB基础类
创建于2007-09-28

7453

社区成员

VB 基础类
申请成为版主
社区公告
暂无公告