msiAdvertiseScriptA 函式 (msi.h)
MsiAdvertiseScript函式會將公告的腳本檔案複製到指定的位置。
語法
UINT MsiAdvertiseScriptA(
[in] LPCSTR szScriptFile,
[in] DWORD dwFlags,
[in] PHKEY phRegData,
[in] BOOL fRemoveItems
);
參數
[in] szScriptFile
MsiAdvertiseProduct或MsiAdvertiseProductEx所產生的腳本檔案完整路徑。
[in] dwFlags
SCRIPTFLAGS 控制項公告的下列位旗標。 dwFlags的值可以是下列值的組合。
[in] phRegData
要寫入登錄資料的暫存資訊所在的登錄機碼。 如果此參數為 Null,登錄資料會根據廣告是每個使用者還是每部電腦,放在適當的機碼底下。 如果此參數為非 Null,腳本會在指定的登錄機碼下寫入登錄資料,而不是一般位置。 在此情況下,應用程式將不會公告給使用者。
請注意,產生使用者或電腦的產品公告時,無法使用此登錄機碼,因為登錄機碼的提供者通常會刪除金鑰。 登錄機碼位於殼層、類別和 .msi 組態資訊的一般登錄位置之外,而且不在 HKEY_CLASSES_ROOT之下。 此登錄機碼僅適用于取得腳本中登錄資料的暫時資訊。
[in] fRemoveItems
如果要移除指定的專案,而不是建立,則為 TRUE。
傳回值
值 | 意義 |
---|---|
|
語言函式已順利完成。 |
|
呼叫進程未在 LocalSystem 帳戶下執行。 |
|
請參閱 錯誤碼。 |
發生與初始化相關的錯誤。 | |
|
此函式僅適用于 Windows 2000 和 Windows XP。 |
備註
呼叫此函式的進程必須在 LocalSystem 帳戶下執行。 若要向目標使用者公告應用程式,呼叫此函式的執行緒必須模擬目標使用者。 如果呼叫此函式的執行緒未模擬目標使用者,應用程式會公告給所有使用者,以提升許可權進行安裝。
注意
msi.h 標頭會根據 UNICODE 預處理器常數的定義,將 MsiAdvertiseScript 定義為別名,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程式碼,可能會導致編譯或執行時間錯誤不符。 如需詳細資訊,請參閱 函式原型的慣例。
需求
最低支援的用戶端 | 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 Installer 版本所需的最低 Windows Service Pack 相關資訊,請參閱 Windows Installer Run-Time 需求。 |
目標平台 | Windows |
標頭 | msi.h |
程式庫 | Msi.lib |
Dll | Msi.dll |