Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/149.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ WNetAddConnection2()和NetUseAdd()之间的差异_C++_Windows_User Accounts_Mount Point - Fatal编程技术网

C++ WNetAddConnection2()和NetUseAdd()之间的差异

C++ WNetAddConnection2()和NetUseAdd()之间的差异,c++,windows,user-accounts,mount-point,C++,Windows,User Accounts,Mount Point,我正在本地安装远程驱动器(请参阅) 问题:wnetadconnection2()和NetUseAdd()之间有什么区别?它们似乎都允许您将远程驱动器路径分配给提供用户名和密码的本地驱动器号 此外,我可以调用wnetadconnection2()指定本地驱动器号(works),或者为本地驱动器号指定“NULL”,控制台net use命令将显示成功地将远程驱动器安装到本地“nothing”(无),正如您所期望的那样,但我不确定这种结果的用途。我希望它能在本地系统/进程和远程计算机之间建立“登录凭据”

我正在本地安装远程驱动器(请参阅)

问题:
wnetadconnection2()
NetUseAdd()
之间有什么区别?
它们似乎都允许您将远程驱动器路径分配给提供用户名和密码的本地驱动器号

此外,我可以调用
wnetadconnection2()
指定本地驱动器号(works),或者为本地驱动器号指定“NULL”,控制台
net use
命令将显示成功地将远程驱动器安装到本地“nothing”(无),正如您所期望的那样,但我不确定这种结果的用途。我希望它能在本地系统/进程和远程计算机之间建立“登录凭据”,以便对
::getVolumeNameForVolumeMoontPoint()
的其他调用具有正确的用户名/密码上下文,但这对我来说不起作用


最终目标是在没有本地驱动器号的情况下本地装载远程驱动器(由于所有26个本地驱动器号都已在使用,所以装载到类似本地GUID路径共享的位置),但所有对
::GetVolumeNameForVolumeMountPoint()
的调用都会因
登录失败而失败:用户名未知或密码错误
,即使在我成功远程装载到提供远程用户名和密码的本地驱动器号之后(当前使用的是
wnetadconnection2()
)。

NetUseAdd()
使连接在Windows资源管理器中可见,而
wnetusecoconnection()
wnetadconnection()
不要使连接在Windows资源管理器中可见。

仅供参考,今天我确认通过Windows资源管理器(在Windows Vista上)可以看到使用
WNetUseConnection2()
装载的驱动器号。奇怪。不被接受和确认,他们都暴露在Windows资源管理器中,这绝对不是我想要的,如果有人碰巧有一个解决方案,我会很高兴听到它;o) @charley哪里有
WNetUseConnection2
的文档?(或者您的意思是
wnetadconnection2
?)NetUseAdd-您可以将null作为本地驱动器号传递,不会映射任何本地驱动器,您可以使用unc路径格式访问远程资源。@weeyoung,这没什么区别,在这两种情况下都可以使用