如果您不想讓用戶安裝多個應用程序,那麼您不希望進行多次ClickOnce部署。你真正想要的是一個部署。因此,ClickOnce應用程序需要成爲您的主應用程序,並且您需要在ClickOnce部署中包含輔助應用程序中的exe。我會這樣做:
將該exe的副本添加到ClickOnce項目中,將生成操作設置爲'內容'並將複製到輸出目錄設置爲'始終複製'。然後執行構建並檢查發佈屬性中的「應用程序文件」對話框,並確保它顯示出來。
現在,如果您可以構建解決方案並構建兩個項目,請確保它正在構建首先創建該exe的項目。然後,向ClickOnce項目添加一個後期構建命令,將其從第一個項目的輸出目錄複製到第二個項目的輸出目錄。
會發生什麼,它會構建第一個項目,然後它將構建C/O項目(並將ClickOnce項目的exe版本複製到輸出目錄),然後它將複製最新版本的將EXE從另一個項目導入ClickOnce項目的輸出目錄,然後它將創建部署。
我不是一個msbuild專家,但後構建命令會是這樣的。
COPY/Y 「$(PROJECTDIR).... \ otherproject \ BIN \發佈\ mynew.exe」 「$ TARGETDIR)\ mynew.exe」
這會將從當前項目,兩個級別,另一個項目,然後是bin文件夾,然後釋放+ mynew.exe到構建輸出目錄。我不打算把目錄結構完全對準另一個項目 - 你需要自己設置。但是這給了你一個總的想法。
謝謝。這似乎已經做到了。 – ispiro
這是否創建兩個桌面圖標? –
@ZacharyCanann nope,只有一個。 – avs099