0
我知道我可以使用WNetAddConnection2和類似的變體來使用自定義憑證連接到遠程共享。我想爲映射驅動器做同樣的(例如:\\MyShare\MyFolder
映射到Y:
)和我的本地磁盤(如:C:
,D:
,E:
,等...)
如果我點WNetAddConnection的東西不\\
失敗..如何使用不同憑據連接到映射/本地磁盤?
是否有針對此場景的特定功能?
我知道我可以使用WNetAddConnection2和類似的變體來使用自定義憑證連接到遠程共享。我想爲映射驅動器做同樣的(例如:\\MyShare\MyFolder
映射到Y:
)和我的本地磁盤(如:C:
,D:
,E:
,等...)
如果我點WNetAddConnection的東西不\\
失敗..如何使用不同憑據連接到映射/本地磁盤?
是否有針對此場景的特定功能?
在工作中,我們使用WindowsImpersonationContext
來處理這種情況。最初我們在VB.NET
ASP.NET
應用程序中使用它,但它很容易修改。
Microsoft Support有一個偉大的文章,如何做到這一點。 (我們最初用它的網絡驅動器,但它可以擴展到本地磁盤爲好。)
基本上可以模擬一個有效的用戶帳戶,這將給予您該帳戶將不得不在這種情況權限。我不得不使用它來訪問工作中的網絡驅動器,在不屬於域的計算機上。 (因此,我們必須爲此用戶帳戶提供用戶名,域名和密碼,該用戶帳戶不在我們的域網絡中,並且該主題很好地爲我們提供了服務。)
適用於本地驅動器,但映射驅動器失敗... – Leonardo
@Leonardo你能具體說明它的失敗嗎?我很好奇,如果你的設置與它有任何關係。 –
其實它更通用,不涉及映射驅動器......它只在本地驅動器上失敗......當我嘗試從文件夾A複製到B模擬用戶X,其中A和B不共享相同的權限(例如:X可以從A讀取但不能寫入B)...所以File.Copy崩潰... – Leonardo