HOW TO:覆寫安裝元件的預設方法
更新:2007 年 11 月
依預設,每個安裝元件都具有下列方法:
Install:安裝程式必須執行的所有安裝函式都在這個方法內執行。Installer1 類別 (或 RunInstallerAttribute 值設定為 true 的所有類別) 會在它所包含的每個安裝元件上呼叫 Install,然後呼叫 Commit (如果安裝全都成功) 或 Rollback (如果發生任何錯誤)。
Commit:在安裝程式類別包含的所有安裝元件上成功執行 Commit 方法之後會呼叫 Install。這時會認可所有的安裝。通常不會在 Commit 方法中進行任何處理,以免引發例外狀況。
Rollback:Rollback 方法是用來在安裝程序內發生錯誤的情況下復原先前所有的安裝工作。如果安裝程式類別包含的任何安裝元件引發錯誤,則會復原到目前執行的所有安裝。
Uninstall:Uninstall 是用來移除系統中的安裝元件資源。與安裝不同的是,解除安裝不可異動。如果任一解除安裝程序失敗的話,系統仍會嘗試解除安裝所有其他資源。
上述任一方法都包含執行必要工作的預設處理而不需修改。不過,您可視需要覆寫並修改每個步驟中的處理。例如,針對 ServiceBase 安裝元件,您可能要修改發生在 Commit 程序中的預設處理,使得安裝程序在成功安裝服務之後會啟動它。您也可能會修改 Uninstall 程序,讓每個服務在解除安裝之前先停止。
若要覆寫安裝元件的預設方法
在將安裝元件加入您的方案之後,開啟安裝程式類別。
找出您要修改的安裝元件,接著在 [程式碼編輯器] 中存取它。
覆寫適當的方法,接著加入您要的功能。如需詳細資訊,請參閱覆寫屬性及方法。
秘訣 當您覆寫 Installer1 類別中的方法時,請確定保留原來安裝、認可、復原或解除安裝資源所需的處理。一般來說,您應將程式碼加入現有功能,而不是移除現有功能。