2009-06-29 89 views
7

我的ClickOnce應用程序給用戶提供了一個錯誤:「無法下載應用程序,應用程序缺少所需文件,請與應用程序供應商或系統管理員聯繫以尋求幫助。Clickonce錯誤:缺少文件。需要丟失文件名

我怎樣才能確定哪個文件丟失?我是否需要手動將文件放在發佈服務器上?

我認爲,當我點擊先決條件並設置從組件供應商的網站下載先決條件並設置爲包含組件的選項時,ClickOnce將包括所有這些組件。看起來我錯過了一些東西。我怎麼知道它是什麼。手動通過清單將是非常耗時的。

+0

我有一個類似的錯誤 - 我改變了包含的所有引用,並且在某些機器上嘗試從publish.htm進行安裝時仍然會出現錯誤。最終我在瀏覽器地址中輸入了特定的子安裝文件(xxx.application),一切正常。 – 2010-04-21 06:03:21

回答

4

我通常在這些問題上發現的是,它與設置爲「包含(自動)」而非僅包含的依賴關係有關。它只能在某些機器上工作,而不能在其他機器上工作,這取決於目標機器上已安裝的DLL。

文件包括 打開發布標籤的項目屬性,然後單擊「應用程序文件」,然後檢查哪些DLL被設置爲「包括(自動)」。您可能需要將其中一些更改爲標準的「包含」,以便安裝到您計算機上的GAC中。 Visual Studio會根據您的機器配置做出一些假設。

日誌文件 要檢查的另一件事通常是錯誤消息將引用文本日誌文件。我不相信它以任何方式鏈接它,所以你必須瀏覽它。但找到該文件,它應該給你更多的信息。

證書錯誤 一個問題,我所看到的是,如果是安裝在服務器上的SSL證書是不是你嘗試安裝在機器上的信任。我經常爲GoDaddy SSL認證而發現,因爲它們並不總是安裝在不經常使用Windows Update的機器上。

0

彈出錯誤時是否有「詳細信息」按鈕?通常有一個堆棧跟蹤,在那裏你可以看到它試圖下載哪個特定的文件。如果可以,請在這裏發佈信息。

+0

在錯誤摘要中,下面的行顯示幾次。但它顯示應用程序的名稱(xxx.aplication),路徑不是發佈服務器。這個錯誤沒有告訴我很多。它只告訴我該應用程序不存在於用戶的機器上。現在的問題是爲什麼不呢?爲什麼ClickOnce無法將文件複製到用戶的計算機上。 .. \t +找不到文件'C:\ Documents and Settings \ xxxxxx \ Local Settings \ Temporary Internet Files \ Content.IE5 \ O220G6MA \ someAppName.application'。 – 2009-06-29 18:12:24

1

ClickOnce以顯示與實際問題無關的錯誤而聞名。如果問題僅限於單個用戶(這聽起來像),我通常首先嚐試通過刪除%user_profile%\ Local Settings \ Apps \目錄清除用戶的ClickOnce緩存。這將解決這些「聯繫人應用程序供應商...」錯誤中的80%,並且對用戶的PC造成的影響相對較低。他們只需要重新下載所有的.NET應用程序。