[请教]WNetAddConnection2设置网络映射的问题?

north00 2011-01-18 09:34:12
请教高手:

想读取远程电脑上的一个文本文件,查了相关网上资料使用WNetAddConnection2方法进行网络映射,代码如下:


Dim NR As NETRESOURCE
Dim MyErr As Long

NR.dwScope = RESOURCE_GLOBALNET
NR.dwType = RESOURCETYPE_DISK
NR.dwDisplayType = RESOURCEDISPLAYTYPE_SHARE
NR.dwUsage = RESOURCEUSAGE_CONNECTABLE
NR.lpLocalName = "d;"
NR.lpRemoteName = "\\10.86.35.28\D$"

MyErr = WNetAddConnection2(NR, "123456", "admin", CONNECT_UPDATE_PROFILE)

If MyErr = NO_ERROR Then

MsgBox "映射成功!", vbInformation, "信息提示"

Else

MsgBox "出现错误:" & Err.Description & " -映射失败!", vbExclamation, "信息提示"

End If


已经将对方文件夹设为共享了,运行后为什么访问不了?
是不是lpLocalName和lpRemoteName等参数有问题??

谢谢~~~
...全文
411 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
dbcontrols 2011-01-18
  • 打赏
  • 举报
回复
也许这个函数只能在局域网里使用
不确定

[Quote=引用 15 楼 north00 的回复:]
为什么会拒绝呢?
我run的时候都能看到对方的文件,需要更改什么设置吗?


引用 14 楼 dbcontrols 的回复:
返回值是5表示对方拒绝
这个返回值的帮助不在MSDN里
[/Quote]
north00 2011-01-18
  • 打赏
  • 举报
回复
为什么会拒绝呢?
我run的时候都能看到对方的文件,需要更改什么设置吗?

[Quote=引用 14 楼 dbcontrols 的回复:]
返回值是5表示对方拒绝
这个返回值的帮助不在MSDN里
[/Quote]
dbcontrols 2011-01-18
  • 打赏
  • 举报
回复
返回值是5表示对方拒绝
这个返回值的帮助不在MSDN里
north00 2011-01-18
  • 打赏
  • 举报
回复
返回值是5
这个返回值的帮助在MSDN里?

[Quote=引用 12 楼 dbcontrols 的回复:]
告诉我返回值我帮你看一下新的错误是啥
[/Quote]
dbcontrols 2011-01-18
  • 打赏
  • 举报
回复
告诉我返回值我帮你看一下新的错误是啥
dbcontrols 2011-01-18
  • 打赏
  • 举报
回复
改成其他的后返回值肯定不一样
就跟你吃饱了和饿着,都做不了总统
但对你来说吃饱了和饿着是不一样的
在别人眼里你都做不了总统

[Quote=引用 10 楼 north00 的回复:]
NR.lpLocalName = "d:"
把D改成其他的也一样
[/Quote]
north00 2011-01-18
  • 打赏
  • 举报
回复
NR.lpLocalName = "d:"
把D改成其他的也一样
dbcontrols 2011-01-18
  • 打赏
  • 举报
回复
lpLocalName Points to a null-terminated string that specifies the name of a local device to be redirected, such as "F:" or "LPT1". The string is treated in a case-insensitive manner. If the string is empty or lpLocalName is NULL, the function makes a connection to the network resource without redirecting a local device.

你该用冒号
并且没有用过这个盘符才可以,这是映射后的盘符
dbcontrols 2011-01-18
  • 打赏
  • 举报
回复
NR.lpLocalName = "d;"
dbcontrols 2011-01-18
  • 打赏
  • 举报
回复
Private Const ERROR_BAD_DEVICE = 1200&
The value specified by lpLocalName is invalid.
指定的lpLocalName 无效
north00 2011-01-18
  • 打赏
  • 举报
回复
运行后WNetAddConnection2的返回值为1200
north00 2011-01-18
  • 打赏
  • 举报
回复
那应该怎么写呢?
我是VB新手哎
在运行里输入\\10.86.35.28可以看到对方的共享文件夹,但是为什么用代码就不行呢。。。。

[Quote=引用 4 楼 dbcontrols 的回复:]
病毒的传播方式
[/Quote]
dbcontrols 2011-01-18
  • 打赏
  • 举报
回复
病毒的传播方式
north00 2011-01-18
  • 打赏
  • 举报
回复
=&H1

[Quote=引用 1 楼 dbcontrols 的回复:]
CONNECT_UPDATE_PROFILE等于多少咋没说?
[/Quote]
dbcontrols 2011-01-18
  • 打赏
  • 举报
回复
Public Const CONNECT_UPDATE_PROFILE = &H1
表示创建的是永久性连接
dbcontrols 2011-01-18
  • 打赏
  • 举报
回复
CONNECT_UPDATE_PROFILE等于多少咋没说?

1,502

社区成员

发帖
与我相关
我的任务
社区描述
VB 网络编程
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧