MsiQueryComponentStateA 関数 (msi.h)
MsiQueryComponentState 関数は、コンポーネントのインストール済み状態を返します。 この関数は、現在のユーザー以外のユーザー アカウントのユーザー アカウントに対してユーザーごとのアンマネージド コンテキストで製品がアドバタイズされない場合に、現在のユーザー以外のユーザー アカウントにインストールされている製品のインスタンスのコンポーネントを照会できます。 現在のユーザー以外のユーザーにインストールされている製品の情報を取得するには、呼び出し元プロセスに管理特権が必要です。
構文
UINT MsiQueryComponentStateA(
[in] LPCSTR szProductCode,
[in] LPCSTR szUserSid,
[in] MSIINSTALLCONTEXT dwContext,
[in] LPCSTR szComponentCode,
[out] INSTALLSTATE *pdwState
);
パラメーター
[in] szProductCode
コンポーネントを含む製品の ProductCode GUID を指定します。
[in] szUserSid
クエリ対象の製品のインスタンスが存在するアカウントのセキュリティ識別子 (SID) を指定します。 dwContext
SID の種類 | 意味 |
---|---|
|
NULL は、現在ログオンしているユーザーを表します。 |
|
システム内の特定のユーザーの列挙を指定します。 ユーザー SID の例として、"S-1-3-64-2415071341-1358098788-3127455600-2561" があります。 |
[in] dwContext
クエリ対象の製品インスタンスのインストール コンテキスト。
[in] szComponentCode
クエリを実行するコンポーネントを指定します。 コンポーネント テーブルの ComponentID 列にあるコンポーネントのコンポーネント コード GUID。
[out] pdwState
指定した製品インスタンスのコンポーネントのインストール状態。 このパラメーターは、次のいずれかの値または null 値を返すことができます。
価値 | 意味 |
---|---|
|
コンポーネントはローカルにインストールされます。 |
|
コンポーネントは、ソースから実行するためにインストールされます。 |
戻り値
MsiQueryComponentState 関数は、次の値を返します。
価値 | 意味 |
---|---|
|
現在のユーザー以外のユーザーにインストールされている製品の情報を取得するには、呼び出し元プロセスに管理特権が必要です。 |
|
構成データが破損しています。 |
|
無効なパラメーターが関数に渡されました。 |
|
関数は正常に完了しました。 |
|
コンポーネント ID は既知のコンポーネントを識別しません。 |
|
製品コードは既知の製品を識別しません。 |
|
Windows エラー コードに書き込むことができないエラー。 |
|
バッファーが小さすぎてユーザー SID を取得できません。 |
詳細については、「表示されるエラー メッセージの」を参照してください。
備考
手記
msi.h ヘッダーは、MSIQueryComponentState をエイリアスとして定義し、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | 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 インストーラーのバージョンで必要な最小 Windows Service Pack の詳細については、Windows インストーラーの Run-Time 要件を参照してください。 |
ターゲット プラットフォーム の |
ウィンドウズ |
ヘッダー | msi.h |
ライブラリ | Msi.lib |
DLL | Msi.dll |
関連項目
Windows インストーラー 2.0 以前の ではサポートされていません
ProductCode を