开发者

Difference between WNetAddConnection2() and NetUseAdd()

I'm mounting a remote drive locally (see User/password problems with GetVolumeNameForVolumeMountPoint() (Windows remote drive mount?))

QUESTION: What is the difference between WNetAddConnection2() and NetUseAdd()? It appears they each permit you to assign a remote drive path to a local drive letter providing username and password.

Further, I can call WNetAddConnection2() specifying a local drive letter (works), or specifying "NULL" for the local drive letter, and the console net use command will show success mounting the remote drive to "nothing" locally -- as you would expect -- but I'm unsure of the purpose for that kind of result. My hope was that it would establish "logon credentials" betwe开发者_开发技巧en the local system/process and the remote computer so that other calls to ::GetVolumeNameForVolumeMountPoint() would have correct username/password context, but that doesn't work for me.

The ultimate goal is to mount the remote drive locally without a local drive letter (to something like a local GUID path share because all 26 local drive letters are already in use), but all calls to ::GetVolumeNameForVolumeMountPoint() fail with Logon failure: unknown user name or bad password, even after I successfully mount remotely to a local drive letter providing the remote username and password (currently using WNetAddConnection2()).


NetUseAdd() makes the connection visible in Windows Explorer, while WNetUseConnection() and WNetAddConnection() do not make the connection visible in Windows Explorer.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜