2012-01-30 123 views
2

我想通過ClickOnce部署來部署應用程序。點擊上的setup.exe啓動安裝,但突然對話框提示說ClickOnce部署「System.IO.IOException」

An Error has occured writing to the hard disk.Check if there is enough available space on the disk.Contact the application vendor! 

當我點擊對話框中的Details按鈕,它顯示了內部異常,堆棧跟蹤,... 這裏是異常信息的有用部分:

System.IO.IOException 
     - The file 'E:\Users\XXXX\AppData\Local\Temp\Deployment\JO85B12B.BBL\N1TJQM37.HZ5\Microsoft.ExceptionMessageBox.dll' already exists. 
     - Source: mscorlib 

也值得一說的是,這是包了一個名爲項目的項目,參考第二項目,說項目B,其需要被包含在ClickOnce的包,所以我在項目A屬性中將其標記爲IncludeMicrosoft.ExceptionMessageBox.dll這是在異常中提到的兩個項目中使用,所以我已經標記爲包括在兩個地方(雖然我的機器Microsoft.ExceptionMessageBox.dll是在GAC(作爲SQL Server的一部分),它不是在客戶端的PC上,所以這就是爲什麼我也將它包含在包中)

+0

你到底在幹什麼? .NET V.xx? Visual Basic,C++,包含這類信息會很有幫助。 – Alex 2012-01-30 02:52:58

+0

感謝您的迴應,我使用的是C#.Net 3.5 – CjCoax 2012-01-30 02:59:09

+0

這個完整的HDD錯誤是一個紅色的鯡魚。看到這裏 - 另一個人報告你在這裏完全相同的問題:http://www.pcreview.co.uk/forums/clickonce-deployment-problem-t2334722.html - 使用此SO線程讓你擺脫麻煩:http ://stackoverflow.com/questions/1099962/deploy-my-dlls-to-gac-for-use-with-clickonce-app – 2012-01-30 03:57:48

回答

3

我有一個DLL給我這個問題。我去了項目的屬性>>「發佈」選項卡>>單擊「應用程序文件」按鈕>>

  • 將「發佈狀態」設置爲「包含」相關文件。
  • 爲程序集創建一個新的「下載組」,給出問題並選擇它(我不知道爲什麼這會起作用)。
  • 發佈。