VsPackage 安裝檔製作

  • 4459
  • 0
  • 2010-12-09

摘要:VsPackage 安裝檔製作

緣起

當有部屬VsPackage專案到客戶端的需求時,製作安裝檔供給客戶安裝程式是一個常見的選擇,底下簡述如何製作一個VsPackage的安裝檔。

 

首先,什麼是VsPackage

我們來看看MSDN上的說明

VSPackages are software modules that extend the Visual Studio integrated development environment (IDE) by providing UI elements, services, projects, editors, and designers.

 

那要如何建立安裝檔

一樣來看看MSDN

Windows Installer 部署可讓您建立安裝程式套件,以散發給使用者,而使用者會執行安裝程式,逐步執行精靈,安裝應用程式。將安裝專案加入至方案即可完成,建置時會建立要散發給使用者的安裝檔案,而使用者會執行安裝檔案,逐步執行精靈,安裝應用程式。

 

Step by Step

從安裝專案到安裝檔

 

Step1:建立SetUp專案

 

Step2:輸出VsPackage的reg檔案

•利用VS2008SDK Tools → SystemDefinition Model Command Prompt → 鍵入底下的指令
•RegPkg.exe  /root:Software\Microsoft\VisualStudio\9.0 /codebase “[DLL放置目錄絕對路徑]\[VsPackage專案之DLL]”  /regfile:“[reg檔案輸出目錄絕對路徑]\[輸出的檔名].reg”
•EX:RegPkg.exe  /root:Software\Microsoft\VisualStudio\9.0 /codebase "D:\Projects\VsPackage.dll"  /regfile:"D:\Projects\VsPackage.reg"

 

Step3:匯入VsPackage的reg檔案

•於安裝專案上 → 右鍵 → 檢視 → 登錄
•註冊表編輯器 → 編輯器的根 → 右鍵 → 匯入 → 匯入reg檔案(VsPackage匯出的reg檔案)

 

Step4:修改匯入的reg資訊

•將CodeBase中的資料夾路徑使用[TARGETDIR]替換
•將InprocServer32中的mscoree.dll資料夾路徑替換為[SystemFolder]
•如果有使用特定資料夾,可將[TARGETDIR]改為[TARGETDIR]資料夾相對路徑\
•[TARGETDIR]為安裝時,使用者所選之安裝資料夾
•EX: D:\Projects\VsPackage.dll [TARGETDIR]DLL\VsPackage.dll

 

Step5:加入專案輸出

 

•專案輸出包含來自 Web 或 Windows 應用程式且必須加入部署專案中的檔案
•於安裝專案上 → 右鍵 → 檢視 → 檔案系統
•檔案系統編輯器 → 應用程式資料夾 → 右鍵 → 加入 → 專案輸出 → 選擇相關的專案加入
 
 

 

Step6:快快樂樂編譯去

•於安裝專案節點上 → 重建(or 建置)
•重建完成後會生成安裝檔案,安裝檔案即可安裝

 

其他-安裝專案的屬性

•安裝專案節點 → 右鍵 → 屬性 → 可設定安裝相關資訊
•EX:ProductName 屬性會在 [新增或移除程式] 對話方塊中顯示為應用程式或元件的描述。也會當成安裝時顯示的預設安裝路徑 (C:\Program Files\Manufacturer\Product Name) 的一部分。

 

其他-啟動條件

•於安裝專案上 → 右鍵 → 檢視 → 啟動條件
•於啟動條件編輯器 → 搜尋目標電腦 → 右鍵 → 加入搜尋
•底下範例示意加入一個搜尋登錄檔的條件,此條件會在安裝時,搜尋客戶端是否有安裝Visual Studio 2008,如果有,則進行安裝;否則,顯示自訂的錯誤訊息,RegKey為欲搜尋的登錄檔位置;Value為要搜尋的屬性;Condition為要啟用的條件;Message是當條件不成立時,所顯示的訊息

 

注意事項

客戶端需要有VSSDK才能正常執行安裝後的VsPackage

相關資料與參考

•VsPackage

http://msdn.microsoft.com/zh-tw/library/bb166424(en-us,VS.80).aspx

• How Do I:部署 VS Package?

http://msdn.microsoft.com/zh-tw/vstudio/bb687946.aspx

•SetUp

http://msdn.microsoft.com/zh-tw/library/k3bb4tfd(VS.80).aspx

分享