msiGetMode 函式 (msiquery.h)
MsiGetMode函式可用來判斷安裝程式目前是否在指定的模式中執行,如資料表所列。 函式會傳回 BOolean 值為 TRUE 或 FALSE,指出傳入函式的特定屬性目前是否設定 (為 TRUE) ) 或未設定 (FALSE) 。
語法
BOOL MsiGetMode(
[in] MSIHANDLE hInstall,
[in] MSIRUNMODE eRunMode
);
參數
[in] hInstall
處理提供給 DLL 自訂動作的安裝,或透過 MsiOpenPackage、 MsiOpenPackageEx或 MsiOpenProduct取得。
[in] eRunMode
指定執行模式。 此參數必須具有下列其中一個值。
值 | 意義 |
---|---|
|
系統管理模式正在安裝,或正在安裝產品。 |
|
公告正在安裝或產品正在安裝或更新。 |
|
正在修改現有的安裝,或有新的安裝。 |
|
已啟用復原。 |
|
記錄檔為使用中。 已在安裝會話之前啟用。 |
|
執行作業處於判斷階段。 |
|
在安裝成功之後,需要重新開機 (可設定) 。 |
|
需要重新開機才能繼續安裝 (可設定) 。 |
|
正在安裝來自封包和 媒體資料表 檔案的檔案。 |
|
來源 LongFileNames 會透過PID_MSISOURCE摘要屬性隱藏。 |
|
目標 LongFileNames 會透過 SHORTFILENAMES 屬性隱藏。 |
|
保留供未來使用。 |
|
作業系統是 9x 版本。 |
|
作業系統支援需求安裝。 |
|
保留供未來使用。 |
|
保留供未來使用。 |
|
從安裝腳本執行呼叫的自訂動作。 |
|
從復原執行腳本呼叫的自訂動作。 |
|
從認可執行腳本呼叫的自訂動作。 |
傳回值
TRUE 表示目前已設定傳入函式的特定屬性。
FALSE 表示目前未設定傳入函式的特定屬性。
備註
請注意,從延後自訂動作呼叫MsiGetMode時,iRunMode的所有執行模式值都無法使用。 如需詳細資訊,請參閱 取得順延強制自訂動作的內容資訊。
需求
最低支援的用戶端 | Windows Server 2012、Windows 8、Windows Server 2008 R2 或 Windows 7 上的 Windows Installer 5.0。 Windows Server 2008 或 Windows Vista 上的 Windows Installer 4.0 或 Windows Installer 4.5。 Windows Server 2003 或 Windows XP 上的 Windows Installer |
目標平台 | Windows |
標頭 | msiquery.h |
程式庫 | Msi.lib |
Dll | Msi.dll |