2015-12-11 50 views
1

我正在爲我公司的Winforms應用程序工作。我有兩個發佈位置,一個用於發佈測試.exe的發佈位置,另一個用於發佈版本。Visual Studio:自定義配置和發佈設置

而不是每次我換時間編輯出版的文件夾位置和更新位置的構建,是有可能成立的Visual Studio根據所選擇的配置改變呢? (調試,發佈等)

此外,是否有火災時,某些行動都採取了在Visual Studio中的事件?如果是這樣,我如何捕獲它們並導致其他代碼運行? EG在構建發佈時自動發送電子郵件。

回答

0

我最近打這個問題,使用Visual Studio插件(VSPackage的)想出了一個解決方案。

我的系統使用桌面WPF表單,所以Web部署選項不適用。

在VSPackage的我請求對IVsUpdateSolutionEvents2事件通知和處理OnActiveProjectCfgChange事件。對於解決方案中的每個項目(這不是理想的),這都會被解僱,但其他事件從未被解僱。 我更改以下項目屬性動態根據配置選擇: 的AssemblyName 產品 PublishUrl

的的AssemblyName和產品的改變是必需的,允許在同一桌面上並排側ClickOnce部署。 (它來到一個十分震驚地發現,ClickOnce的需要,即使在測試和直播節目從我們的服務器上的不同文件夾中部署了一個獨特的程序集名稱。)

注:我使用依賴於配置的編譯時間定義切換數據庫連接字符串。這消除了運行時使用config.exe文件時出現的安全漏洞。

相關問題