2010-12-06 53 views
0

我想知道是否有可能爲同一個應用程序有不同的部署路徑的解決方案。我希望能夠做的是有一個「生產」版本和一個winforms應用程序的「調試/測試版」版本。理想情況下,我希望能夠以最少的「人工努力」完成此項工作。beta版和winforms發行版的生產版共存?

我的意思是我希望能夠配置我的winform解決方案,以便如果我構建應用程序的測試版本,它將顯示爲開始菜單中「發佈」版本的兄弟。是這樣的:

開始菜單 - >公司名稱 - >產品名稱 - > AppName的 開始菜單 - >公司名稱 - >產品名稱 - > AppName的(測試版)

什麼是好習慣配置這樣的事情?

目前,它看起來這是我們需要採取的方法:

  1. 變化大會名稱爲應用程序,在「應用程序」選項卡,以「AppNameBeta」,我們不能使用相同的組件名稱,否則會覆蓋AppName或AppName將覆蓋AppNameBeta。
  2. 將發佈\選項中的產品名稱更改爲「AppNameBeta」,以便快捷方式名稱不同。
  3. 更改Resources.xml文件中的任何程序集名稱引用,從AppName到AppNameBeta(無論在第1步中更改了程序集名稱)。

我誤解了這一點,還是有更簡單/更優雅的方式來部署測試版?

感謝您的支持。

回答

2

我認爲你的答案是設置配置。在您的工具欄中,您會看到一個指定了Debug或Release的下拉列表;放下它,你會看到一個「Configuration Manager ...」選項。選擇那個。在新對話框左上角的「Active solution configuration:」下方會出現另一個下拉菜單,它會顯示「New ...」選項。選擇此項,輸入「Beta」作爲您的配置名稱,並從「發佈」(我假設您已爲您的實際產品發佈配置)複製設置。確保選中「創建新項目配置」。這將允許您爲項目和整體解決方案創建一組新的部署設置。

現在,您可以選擇測試版配置或發佈配置,這樣做時您可以指定要包含的不同項目;例如,您可以在解決方案中放置兩個安裝程序項目,一個配置爲測試版安裝,另一個配置爲發佈。您還可以更改部署和發佈路徑。

有一些事情,這將不會允許你這樣做:

  • 你不能有不同的程序集名稱,版本或GUID。這意味着任何在GAC中註冊或放置在共享目錄中的程序集將被最近安裝的文件或最新版本(可能是beta)覆蓋。如果沒有重命名項目或者使用快捷方式鏈接其代碼文件的完全不同的項目,您實際上無法繞過這個過程。
  • 由於安裝項目不同,它們安裝的應用程序將被Windows視爲不同的應用程序。但是,安裝人員必須爲安裝的文件,用戶數據等指定不同的默認位置。否則安裝程序會相互覆蓋,不僅會造成生產環境的損失,而且會導致安裝/卸載日誌中的大量混亂。