2011-09-12 138 views
2

Windows資源管理器我想提供打開Windows資源管理器的手段(或者至少查看目錄內容)通過內部網頁,我對我們的業務發展。有幾臺機器通過內部網絡共享。我提供了一個文本輸入字段,允許用戶輸入他們想要與數據庫表中給定行相關聯的文件夾路徑,並且我可以存儲該信息並創建file://///10.10.5.10/Recipes/Pie鏈接到我們的一個餅食譜文件夾共享機器。打開通過鏈接

鏈接正確呈現在頁面上,如果我複製的鏈接信息,並將其粘貼到地址欄就會如果使用IE顯示Firefox或者打開Windows資源管理器導航的頁面。

然而,其中的鏈接,如果你點擊它直接我的網頁上什麼都沒有。我懷疑這可能與安全和瀏覽器有關,對吧?我在別人的系統中看到過一個SharePoint頁面,做了工作,但我猜想這與SharePoint和瀏覽器中的網頁之間的一些差異有關。解決方法是右鍵單擊該鏈接並將其複製/粘貼到另一個選項卡中即可,我可能必須忍受這一點,但我想知道是否有人有任何建議或解決此問題的方法。也許我只是在做一些錯誤的事情,但我很確定它與瀏覽器安全相關。

+1

你能否提供一個非常簡單的(靜態html)例子來重現行爲?和哪個瀏覽器? – Yahia

+0

@Yahia,如果我只是建立一個非常簡單的html,只要在它的鏈接,雙擊從資源管理器,它會在IE中打開,當我點擊鏈接,它要求我驗證,如果我想打開Windows資源管理器。我沒有在ASP.NET MVC中的網頁中看到這種行爲。 – itsmatt

+0

那麼這肯定是瀏覽器安全問題......在哪個區域是您的ASP.NET應用程序? – Yahia

回答

1

對我來說,這似乎是一個純粹的Internet Explorer設置問題。

首先,我會建議你最好在服務器的路徑中使用UNC或DNS名稱,而不是IP地址的使用:使用file://///myserver/Recipes/Piefile://///myserver.mydomain.com/Recipes/Pie而不是file://///10.10.5.10/Recipes/Pie

其次,你應該更好地包括file://///myserverfile://///myserver.mydomain.com甚至file://///10.10.5.10/到「本地Intranet」或至少是「受信任的站點」區域:

enter image description here

那麼你應該確認安全設置您將映射網址的區域。看「雜項」組「顯示混合含有」:

enter image description here

,如果您有「提示」設置,您會看到警告:

enter image description here

在每一次嘗試打開鏈接file://///myserver/Recipes/Pie

如果您遇到一些問題,我建議您在「高級」選項卡中重置IE設置:

enter image description here

1

最有可能這是一個權限問題。 ASP.net在ASP.net進程帳戶下運行。查找ASPNET用戶並將權限應用於相關用戶的文件夾。

+0

所以這將是我需要執行的「針對每個文件夾」操作,對吧? – itsmatt

1

聽上去的確是安全問題。請嘗試以下的一種或兩種:

  • 嘗試使用模擬來模擬擁有足夠權限的域用戶訪問瀏覽器中的客戶端的機器
  • 。如果這是一個很小的Intranet應用程序,給應用程序的完全信任客戶

下面是你可以使用模擬一類的鏈接 - 見我的回答:

Invoke or call C# console app from C# web service?

+0

感謝詹姆斯的迴應 - 我需要做一些關於冒充的事情以及如何做到這一點。 – itsmatt

+0

我會在上午發佈一個模擬假冒課程(將近上午2點)。 –