2014-09-29 61 views
1

我有一個應用程序需要使用提供的用戶名和密碼訪問遠程計算機上的共享,並且我正在使用WNetUseConnection2連接到該共享。實際代碼取自here帶憑據的WNetUseConnection返回BAD網絡名稱

它們都是Windows 7 64位操作系統,無論是虛擬機還是物理機,但問題是在某些機器上,進程無法訪問共享,但在其他機器上它使用完全相同的配置。

失敗時,我試圖通過Process Monitor來檢查,我看到它提供了以下錯誤:

Operation CreateFile \\;RdpDr\;:1\\199.63.65.55\MyShareName BAD NETWORK NAME 

我在想,如果有一個人有一個線索,這是怎麼回事,就好像我在同一臺機器上使用RunAS for Windows資源管理器並嘗試達到「\ 199.63.65.55 \ MyShareName」的效果。

以前有沒有人遇到過這個問題,或者有什麼線索可以在幾臺機器上造成這種情況?

此外,它爲什麼在我的UNC路徑前綴\\;RdpDr\;:1

問候 基蘭

+0

機器上的用戶是否有權訪問共享? – Sorceri 2014-09-29 17:22:42

+0

@Sorceri:是的,他有分享的讀/寫權限。實際上,用戶是遠程計算機上的本地用戶,因此我將用戶名稱作爲'ip address'\'用戶名',從遠程計算機上說'199.63.65.55 \ ShareUser' – Kiran 2014-09-30 02:52:13

回答

0

終於找到了問題,我試圖連接到2個不同的份額使用不同的用戶在同一臺​​機器,這顯然不是由OS喜歡上。

一個解決方法是使用IP地址進行第一次共享訪問,第二次使用機器名稱,這使得Windows認爲他們吃了2臺不同的機器並提供不同的憑據。

如果我們知道它實際上是在抱怨多臺連接到同一臺機器,那麼生活會變得如此簡單。