MsiSourceListAddMediaDiskA 関数 (msi.h)
MsiSourceListAddMediaDisk 関数は、登録済み製品またはパッチのメディア ソースのディスクを追加または更新します。 指定されたディスクが既に存在する場合は、新しい値で更新されます。 指定されたディスクが存在しない場合は、新しい値を使用して新しいディスク エントリが作成されます。
構文
UINT MsiSourceListAddMediaDiskA(
[in] LPCSTR szProductCodeOrPatchCode,
[in, optional] LPCSTR szUserSid,
[in] MSIINSTALLCONTEXT dwContext,
[in] DWORD dwOptions,
[in] DWORD dwDiskId,
[in] LPCSTR szVolumeLabel,
[in, optional] LPCSTR szDiskPrompt
);
パラメーター
[in] szProductCodeOrPatchCode
製品またはパッチの ProductCode またはパッチ GUID。 null で終わる文字列を使用します。 文字列が 39 文字を超える場合、関数は失敗し、ERROR_INVALID_PARAMETERを返します。 このパラメーターは NULL
[in, optional] szUserSid
このパラメーターには、製品またはパッチを含むユーザー アカウントを指定する文字列 SID を指定できます。 SID が検証または解決されていません。 SID が正しくないと、ERROR_UNKNOWN_PRODUCTまたはERROR_UNKNOWN_PATCHが返される可能性があります。
[in] dwContext
このパラメーターは、製品またはパッチ インスタンスのコンテキストを指定します。 このパラメーターには、次のいずれかの値を含めることができます。
[in] dwOptions
dwOptions 値は、szProductCodeOrPatchCodeの意味を指定します。
旗 | 意味 |
---|---|
|
szProductCodeOrPatchCode は製品コード GUID です。 |
|
szProductCodeOrPatchCode はパッチ コード GUID です。 |
[in] dwDiskId
このパラメーターは、追加または更新されるディスクの ID を提供します。
[in] szVolumeLabel
szVolumeLabel は、追加または更新されるディスクのラベルを提供します。 更新によって、レジストリ内の既存のボリューム ラベルが上書きされます。 ディスク プロンプトのみを変更するには、レジストリから既存のボリューム ラベルを取得し、この呼び出しで新しいディスク プロンプトと共に指定します。 szVolumeLabel に NULL または空の文字列を渡すと、空の文字列 (長さが 0 バイト) がボリューム ラベルとして登録されます。
[in, optional] szDiskPrompt
MsiSourceListAddMediaDiskへのエントリで、szDiskPrompt は、追加または更新されるディスクのディスク プロンプトを提供します。 更新によって、登録されているディスク プロンプトが上書きされます。
ボリューム ラベルのみを変更するには、登録されている既存のディスク プロンプトを取得し、新しいボリューム ラベルと共 MsiSourceListAddMediaDisk を呼び出すときに指定します。 NULL または空の文字列
戻り値
MsiSourceListAddMediaDisk 関数は、次の値を返します。
価値 | 意味 |
---|---|
|
ユーザーは、指定されたメディア ソースまたは指定された製品またはパッチを読み取る機能を持っていません。 これは、メディア ソース、製品、またはパッチが見つかったかどうかを示すものではありません。 |
|
構成データが破損しています。 |
|
Windows インストーラー サービスにアクセスできませんでした。 |
|
無効なパラメーターが関数に渡されました。 |
|
値が正常に並べ替えられた。 |
|
パッチが見つかりませんでした。 |
|
製品が見つかりませんでした。 |
|
予期しない内部エラー。 |
備考
管理者は、マシン コンテキストまたはユーザーごとの独自のコンテキスト (マネージドまたはアンマネージド) の下に存在する製品またはパッチ インスタンスのインストールを変更できます。ユーザーが管理する任意のユーザーごとのコンテキストの下に存在する製品またはパッチ インスタンスのインストールを変更できます。 管理者は、他のユーザーの非管理対象コンテキストの下に存在する製品またはパッチ インスタンスの別のユーザーのインストールを変更することはできません。
管理者以外は、別のユーザーのユーザーごとのコンテキスト (マネージドまたはアンマネージド) の下に存在する製品またはパッチ インスタンスのインストールを変更できません。ユーザーごとのアンマネージド コンテキストの下に存在する製品またはパッチ インスタンスのインストールを変更できます。 製品またはパッチ ソースの参照が有効になっている場合にのみ、マシン コンテキストまたはユーザーごとの独自のマネージド コンテキストで製品またはパッチ インスタンスのインストールを変更できます。 ユーザーは、ポリシーを設定してソースを参照できます。 詳細については、「DisableBrowse、
手記
msi.h ヘッダーは、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして MsiSourceListAddMediaDisk を定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | 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 インストーラー 3.0 以降。 Windows インストーラーのバージョンで必要な最小 Windows Service Pack の詳細については、Windows インストーラーの Run-Time 要件を参照してください。 |
ターゲット プラットフォーム の |
ウィンドウズ |
ヘッダー | msi.h |
ライブラリ | Msi.lib |
DLL | Msi.dll |
関連項目
Windows インストーラー 2.0 以前の ではサポートされていません
ProductCode を