自訂動作類型 18
這個自訂動作會呼叫以命令列啟動的可執行檔。
來源
可執行檔是從與應用程式一起安裝的檔案產生。 CustomAction 資料表的 [來源] 欄位包含File 資料表的索引鍵。 自訂動作程式碼的位置取決於此檔案的目標路徑解析;因此,此自訂動作必須在安裝檔案之後呼叫,並在移除檔案之前呼叫。
類型值
在 CustomAction 資料表 的 Type 資料行中包含下列值,以指定基本數數值型別。
常數 | 十六進位 | Decimal |
---|---|---|
msidbCustomActionTypeExe + msidbCustomActionTypeSourceFile | 0x012 | 18 |
目標
CustomAction 資料表的 Target 資料行包含 Source 資料行中所識別可執行檔的命令列字串。
傳回處理選項
在 CustomAction 資料表 的 Type 資料行中包含選擇性旗標位,以指定傳回處理選項。 如需選項和值的描述,請參閱 自訂動作傳回處理選項。
執行排程選項
在 CustomAction 資料表 的 Type 資料行中包含選擇性旗標位,以指定執行排程選項。 這些選項可控制自訂動作的多重執行。 如需選項的描述,請參閱 自訂動作執行排程選項。
In-Script執行選項
在 CustomAction 資料表 的 Type 資料行中包含選擇性旗標位,以指定腳本內執行選項。 這些選項會將動作程式碼複製到執行、復原或認可腳本。 如需選項的描述,請參閱 自訂動作In-Script執行選項。
傳回值
可執行檔的自訂動作必須傳回值為 0 才能成功。 安裝程式會將任何其他傳回值解譯為失敗。 若要忽略傳回值,請在 CustomAction 資料表的 [類型] 欄位中設定 msidbCustomActionTypeContinue 位旗標。
備註
啟動可執行檔的自訂動作會採用命令列,這通常包含動態指定的屬性。 如果這也是 延後執行自訂動作,安裝程式會使用 CreateProcessAsUser 或 CreateProcess ,在從安裝腳本叫用自訂動作時建立進程。
參考已安裝檔案作為其來源的自訂動作,例如自訂動作類型 18 (EXE) ,必須遵守下列排序限制:
- 自訂動作必須在 CostFinalize 動作之後排序。 如此一來,自訂動作就可以解析找出 EXE 所需的路徑。
- 如果電腦上尚未安裝來源檔案,則延後 (腳本內) 此類型的自訂 動作必須在 InstallFiles 動作之後排序。
- 如果電腦上尚未安裝來源檔案,則必須在 InstallFinalize 動作之後排序此類型的非延後自訂動作。
相關主題