访问网络共享

问题描述:

我目前正在尝试使用vC++ 6.0从我的机器programaticaly访问网络共享。我正在使用WNetAddConnection2连接到使用我的凭据的共享。访问网络共享

我面临以下问题: 考虑有两个用户试图从同一台机器依次访问同一台远程共享的情况。现在,一旦用户登录,其他用户将无法使用其凭据登录共享,直到第1位用户注销。

另外,如果第一个用户登录到远程机器的根共享,则其他用户无法访问该机器上的任何其他共享。

请让我知道是否有相同的解决方法。

在此先感谢

答案取决于如果第一个用户仍需要访问。如果它们不是,则调用WNetCancelConnection2()。如果他们这样做,Keith Brown在他的“编程Windows安全性”一书中有一个调用LogonUser()的技巧来建立一个新的登录会话,该会话创建一个新的SMB“端口”以避免冲突。模拟后,您的线程将能够使用不同的凭据进行连接。