MsiGetPatchInfoExW 関数 (msi.h)
MsiGetPatchInfoEx 関数は、製品の指定されたインスタンスへのパッチの適用に関する情報を照会します。
構文
UINT MsiGetPatchInfoExW(
[in] LPCWSTR szPatchCode,
[in] LPCWSTR szProductCode,
[in] LPCWSTR szUserSid,
[in] MSIINSTALLCONTEXT dwContext,
[in] LPCWSTR szProperty,
[out, optional] LPWSTR lpValue,
[in, out] LPDWORD pcchValue
);
パラメーター
[in] szPatchCode
パッチの GUID を含む null で終わる文字列。 このパラメーターは NULL
[in] szProductCode
製品インスタンスの ProductCode GUID を含む null で終わる文字列。 このパラメーターは NULL
[in] szUserSid
クエリ対象のパッチのインスタンスが存在するセキュリティ識別子 (SID) を指定する null で終わる文字列。 NULL 値を使用すると、現在のユーザーが指定されます。
SID | 意味 |
---|---|
|
ログオンするユーザーを指定します。 |
|
システム内の特定のユーザー ID の列挙を指定します。 次の例では、考えられるユーザー SID "S-1-3-64-2415071341-1358098788-3127455600-2561" を識別します。 |
[in] dwContext
列挙を、ユーザーごとの非管理対象、ユーザーごとの管理、またはコンピューターごとのコンテキストに制限します。 このパラメーターには、次のいずれかの値を指定できます。
[in] szProperty
取得するプロパティ値を指定する null で終わる文字列。 szProperty パラメーターには、次のいずれかを指定できます。
名前 | 意味 |
---|---|
|
製品が使用するキャッシュされたパッチ ファイルを取得します。 |
|
最後のパッチ インストールが製品に適用されたパッチ変換のセットを取得します。 この値は、ユーザーがログオンしていない場合は、ユーザーごと、管理されていないアプリケーションでは使用できない場合があります。 |
|
この製品がサービスを最後に受信した時刻を取得します。 このプロパティの値は、パッチが適用または製品から削除されるたびに置き換えられます。または、/v Command-Line Option を使用して製品を修復します。 製品が修理やパッチを受け取っていない場合、このプロパティには、この製品がこのコンピューターにインストールされた時刻が含まれます。 |
|
製品からアンインストールするパッチが可能な限りマークされている場合は、"1" を返します。 この場合でも、アンインストールできない別のパッチでこの修正プログラムが必要な場合、インストーラーはアンインストールをブロックできます。 |
|
このパッチが製品に現在適用されている場合は、"1" を返します。 このパッチが別のパッチに置き換えられる場合は、"2" を返します。 このパッチが古い場合は 、"4" を返します。 これらの値は、msiEnumPatchesEx が使用 |
|
パッチの登録済み表示名を取得します。 MsiPatchMetadata テーブルに DisplayName プロパティが含まれていない修正プログラムの場合、返される表示名は空の文字列 ("") です。 |
|
パッチの登録済みのサポート情報 URL を取得します。 MsiPatchMetadata テーブルに MoreInfoURL プロパティが含まれていないパッチの場合、返されるサポート情報 URL は空の文字列 ("") です。 |
[out, optional] lpValue
このパラメーターは、プロパティ値を受け取るバッファーへのポインターです。 このバッファーは、情報を格納するのに十分な大きさにする必要があります。 バッファーが小さすぎる場合、この関数は ERROR_MORE_DATA を返し、*pcchValue をプロパティ値内の TCHAR の数に設定します(終端 NULL 文字は含まれません)。
lpValue と
[in, out] pcchValue
関数を呼び出すとき、このパラメーターは、lpValue バッファー内の TCHAR の数を指定する変数へのポインターである必要があります。 関数が戻るときに、関数が指定したバッファーに値をコピーするかどうかに関係なく、このパラメーターは要求された値のサイズに設定されます。 サイズは、要求された値 TCHAR の数として返されます。終端の null 文字は含まれません。
このパラメーターは、
戻り値
MsiGetPatchInfoEx 関数は、次の値を返します。
リターン コード | 形容 |
---|---|
|
この関数は、十分な特権を持つリソースにアクセスできません。 |
|
構成データが破損しています。 |
|
関数は失敗し、エラーは他のエラー コードでは識別されません。 |
|
無効なパラメーターが関数に渡されます。 |
|
この値は、指定されたバッファーに収まりません。 |
|
パッチが正常に列挙されました。 |
|
szProduct が指定 |
|
プロパティが認識されません。 |
|
パッチが認識されません。 |
備考
Windows インストーラー 2.0: サポートされていません。 この関数は、Windows インストーラー バージョン 3.0 以降で使用できます。
ユーザーは、表示されている任意の製品インスタンスのパッチ データに対してクエリを実行できます。 管理者グループは、コンピューター上の任意の製品インスタンスと任意のユーザーのパッチ データに対してクエリを実行できます。 ユーザーがログオンしていない場合、すべての値がユーザーごと、管理されていないアプリケーションで使用できるわけではありません。
手記
msi.h ヘッダーは、MSIGetPatchInfoEx をエイリアスとして定義し、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 |
関連項目
ProductCode を
パッチ を削除する