C++ 我在访问Vista上的网络驱动器时遇到问题

C++ 我在访问Vista上的网络驱动器时遇到问题,c++,C++,步骤是: 我一直在用UAC运行一个服务程序,使用WNetAddConnection2函数映射网络驱动器,然后它就成功了 我运行了另一个具有管理员权限(以管理员身份运行)的程序来调用函数GetFileAttribute以获取网络驱动器的属性,但是,返回的是0xFFFFFF,错误代码为3(未找到特殊路径) 我还尝试在网络驱动器上创建文件,但仍然失败 你能帮我解决这个问题吗 非常感谢。在NT中,“网络驱动器”是从MS-DOS文件系统名称空间到UNC路径的符号链接。每个登录会话都会维护这些符号链接。这也

步骤是: 我一直在用UAC运行一个服务程序,使用WNetAddConnection2函数映射网络驱动器,然后它就成功了

我运行了另一个具有管理员权限(以管理员身份运行)的程序来调用函数GetFileAttribute以获取网络驱动器的属性,但是,返回的是0xFFFFFF,错误代码为3(未找到特殊路径)

我还尝试在网络驱动器上创建文件,但仍然失败

你能帮我解决这个问题吗

非常感谢。

在NT中,“网络驱动器”是从MS-DOS文件系统名称空间到UNC路径的符号链接。每个登录会话都会维护这些符号链接。这也意味着管理员有自己的一组符号链接

解决方案是在需要以驱动器号形式访问特定UNC网络路径的每个登录会话中调用
wnetadConnection2

这记录在:

在Windows Server 2003和Windows XP上, WNet函数用于创建和删除 MS-DOS中的网络驱动器号 与设备名称空间关联的设备名称空间 登录会话,因为MS-DOS设备 由AuthenticationID(a)标识 本地唯一标识符或LUID, 与登录会话关联。)此 可能会影响调用 创建一个 一个用户下的网络驱动器号 登录,但查询现有网络 不同用户下的驱动器号 登录。