1

我試圖將解決方案從VS.NET 2008轉換爲2010.該解決方案包括一個Windows服務項目和一個安裝Windows服務的安裝項目。我在編譯安裝項目時遇到問題。我嘗試了幾次從零開始,遵循教程here下的標題爲的部分爲您的服務創建安裝項目。Windows服務安裝項目問題從VS.NET 2008轉換到2010

當我只需按照以下步驟並生成項目,我得到這個錯誤:

Unable to build custom action named 'Primary output from <name> (Release x86)', InstallerClass property is only valid for assemblies. 

(哪裏是我的Windows服務項目的名稱)。搜索此錯誤會調出this MSDN上的頁面,它告訴我將InstallerClass設置爲False。我爲4個自定義操作中的每一個都這樣做。使這一變化,並建成後,我得到以下錯誤:

Unable to build custom action named 'Primary output from <name> (Release x86)' from project output group 'Primary output' because the project output group does not have a key file. 

谷歌搜索,我只能得到一個hit。甚至不要打擾點擊鏈接,全文是:「刪除自定義操作並將其替換爲指向具有密鑰文件的項目輸出組的自定義操作。」

這是什麼意思?任何人都可以幫我弄清楚我在這裏做錯了什麼?

回答

3

它看起來像問題是當我設置InstallerClass。顯然,我沒有爲x86目標構建Windows服務。我從this討論中得到了提示。我將所有項目都更改爲目標正確的平臺,並將安裝程序類設置爲對於安裝文件中的每個自定義操作,現在正在構建它。

+0

這個'InstallerClass'屬性在哪裏設置爲true? – 2014-04-21 17:03:39

+0

@TheMuffinMan在VS 2103中,雙擊錯誤列表中的錯誤,在Install文件夾下,你應該看到屬性窗口中的InstallerClass屬性設置爲false。 – kyle 2015-06-25 19:40:45

3

這是有點老,但我自己碰到了這個錯誤: 遷移vs2008到vs2010,安裝項目沒有在一個特定的配置中給出錯誤,而是在包括安裝項目在內的其他兩個配置中。發現最初創建時,有人添加了來自特定配置的主要輸出(不是「(Active)」)。所以當一個不同的配置被建立時,安裝程​​序會拋出這個錯誤。 (可能在遷移之前有這個問題VS2010。)
要解決:

  1. 複製自定義動作的名稱和CustomActionData字符串(只是文本輕鬆地重新創建)
  2. 刪除自定義操作
  3. 刪除主輸出&內容文件(這是Web安裝項目)
  4. 加回小學&內容,選擇(活動)配置
  5. 加回自定義操作

現在所有內容都沒有錯誤。

+0

有時,您只需重建所有組件以確保它們可用,特別是從調試切換到發佈時。 – 2013-12-10 06:22:42

-1

重建項目的哪個類安裝程序類,然後重建安裝程序項目。

相關問題