MsiDoActionA 関数 (msiquery.h)
MsiDoAction 関数は、組み込みアクション、カスタム アクション、またはユーザー インターフェイス ウィザード アクションを実行します。
構文
UINT MsiDoActionA(
[in] MSIHANDLE hInstall,
[in] LPCSTR szAction
);
パラメーター
[in] hInstall
DLL カスタム アクションに提供されるインストール、または MsiOpenPackage、MsiOpenPackageEx、または MsiOpenProduct を使用して取得されたインストールを処理します。
[in] szAction
実行するアクションを指定します。
戻り値
この関数は UINT を返します。
解説
MsiDoAction 関数は、指定された名前に対応するアクションを実行します。 名前が組み込みアクションまたは CustomAction テーブルのカスタム アクションとしてインストーラーによって認識されない場合、名前はユーザー インターフェイス ハンドラー オブジェクトに渡され、関数またはダイアログ ボックスを呼び出すことができます。 null アクション名が指定されている場合、インストーラーは ACTION プロパティの大文字の値を実行するアクションとして使用します。 プロパティ値が定義されていない場合は、"INSTALL" として定義された既定のアクションが実行されます。
InstallFiles アクションや WriteRegistryValues アクションなど、システムを更新するアクションは、MsiDoAction を呼び出して実行できません。 このルールの例外は、InstallInitialize アクションと InstallFinalize アクションの間の InstallExecuteSequence テーブルでスケジュールされたカスタム アクションから MsiDoAction が呼び出される場合です。 AppSearch や CostInitialize など、システムを更新しないアクションを呼び出すことができます。
注意
msiquery.h ヘッダーは、MSIDoAction をエイリアスとして定義し、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択します。 encoding-neutral エイリアスの使用を encoding-neutral ではないコードと混在すると、コンパイル エラーまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。
要件
サポートされている最小のクライアント | Windows Server 2012、Windows 8、Windows Server 2008 R2、または Windows 7 の Windows インストーラー 5.0。 Windows Server 2008 または Windows Vista の Windows インストーラー 4.0 または Windows インストーラー 4.5。 Windows Server 2003 または Windows XP の Windows インストーラー |
対象プラットフォーム | Windows |
ヘッダー | msiquery.h |
Library | Msi.lib |
[DLL] | Msi.dll |