我知道我可以使用WNetAddConnection2和类似的变体来使用自定义凭据连接到远程共享。我想对映射驱动器(例如\\MyShare\MyFolder
映射到Y:
)和我的本地磁盘(例如:C:
,D:
,E:
执行相同操作等等......)
如果我将WNetAddConnection指向不是\\
的东西,它就会失败......
是否有针对此场景的特定功能???
答案 0 :(得分:0)
在工作中,我们使用WindowsImpersonationContext
来处理这种情况。最初我们在VB.NET
ASP.NET
应用程序中使用它,但它很容易修改。
Microsoft Support有一篇关于如何做的很棒的文章。 (我们最初将它用于网络驱动器,但它也可以扩展到本地磁盘。)
您基本上可以模拟有效的用户帐户,该帐户会授予您该帐户的权限。我不得不使用它来访问工作中的网络驱动器,在不属于域的计算机上。 (因此,我们必须为此用户帐户提供不在我们域网络上的用户名,域名和密码,这个主题很适合我们。)