MsiConfigureProductA 函式 (msi.h)

MsiConfigureProduct 函式會安裝或卸載產品。

語法

UINT MsiConfigureProductA(
  [in] LPCSTR       szProduct,
  [in] int          iInstallLevel,
  [in] INSTALLSTATE eInstallState
);

參數

[in] szProduct

指定要設定之產品的產品代碼。

[in] iInstallLevel

指定將產品安裝至其默認狀態時,應該安裝多少產品。 如果 eInstallState 參數設定為INSTALLSTATE_DEFAULT以外的任何其他值,則會忽略 iInstallLevel 參數並安裝所有功能。

此參數可以是下列其中一個值。

意義
INSTALLLEVEL_DEFAULT
系統會安裝撰寫的預設功能。
INSTALLLEVEL_MINIMUM
只會安裝必要的功能。 您可以在INSTALLLEVEL_MINIMUM與INSTALLLEVEL_MAXIMUM之間指定值,以安裝可用功能的子集。
INSTALLLEVEL_MAXIMUM
已安裝所有功能。 您可以在INSTALLLEVEL_MINIMUM與INSTALLLEVEL_MAXIMUM之間指定值,以安裝可用功能的子集。

[in] eInstallState

指定產品的安裝狀態。 此參數可以是下列其中一個值。

意義
INSTALLSTATE_LOCAL
產品會隨本機安裝的所有功能一起安裝。
INSTALLSTATE_ABSENT
產品已卸載。
INSTALLSTATE_SOURCE
產品會隨安裝以從來源執行的所有功能一起安裝。
INSTALLSTATE_DEFAULT
產品會隨安裝到 功能數據表中指定的默認狀態的所有功能一起安裝。
INSTALLSTATE_ADVERTISED
產品已公告。

傳回值

意義
ERROR_INVALID_PARAMETER
無效的參數會傳遞至 函式。
ERROR_SUCCESS
函式成功。
與動作相關的錯誤
如需詳細資訊,請參閱 錯誤碼
初始化錯誤
與初始化相關的錯誤。

備註

MsiConfigureProduct 函式會使用目前設定來顯示使用者介面 (UI) 。 您可以使用 MsiSetInternalUIMsiSetExternalUI 或 MsiSetExternalUIRecord 來變更使用者介面設定。

如果 eInstallState 參數設定為INSTALLSTATE_DEFAULT以外的任何其他值,則會忽略 iInstallLevel 參數,而且會安裝產品的所有功能。 若要在 eInstallState 參數未設定為 INSTALLSTATE_DEFAULT時控制個別功能的安裝,請使用 MsiConfigureFeature

注意

msi.h 標頭會將 MsiConfigureProduct 定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 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

另請參閱

多套件安裝