次の方法で共有


MsiSourceListAddSourceA 関数 (msi.h)

MsiSourceListAddSource 関数は、指定したユーザー コンテキストで製品またはパッチの指定した種類のソースを含む有効なネットワーク ソースの一覧に追加します。

SOURCELIST プロパティ内のソースの数は無制限です。

構文

UINT MsiSourceListAddSourceA(
  [in] LPCSTR szProduct,
  [in] LPCSTR szUserName,
  [in] DWORD  dwReserved,
  [in] LPCSTR szSource
);

パラメーター

[in] szProduct

変更する製品の ProductCode

[in] szUserName

ユーザーごとのインストールのユーザー名。 Windows 2000 または Windows XP では、ユーザー名は常に DOMAIN\USERNAME (またはローカル ユーザーの場合は MACHINENAME\USERNAME) の形式にする必要があります。

マシンごとのインストールの空の文字列または NULL

[in] dwReserved

将来の使用のために予約されています。 この値は 0 に設定する必要があります。

[in] szSource

ソースを指定する文字列へのポインター。

戻り値

リターン コード 形容
ERROR_ACCESS_DENIED
ユーザーには、ソースを追加する機能がありません。
ERROR_BAD_CONFIGURATION
構成データが破損しています。
ERROR_BAD_USERNAME
ユーザー名を解決できませんでした。
ERROR_FUNCTION_FAILED
関数が成功しませんでした。
ERROR_INSTALL_SERVICE_FAILURE
インストーラー サービスにアクセスできませんでした。
ERROR_INVALID_PARAMETER
無効なパラメーターが関数に渡されました。
ERROR_SUCCESS
ソースが追加されました。
ERROR_UNKNOWN_PRODUCT
指定された製品が不明です。

備考

管理者は、任意のユーザーのマシンごとのインストール、ユーザーごとの独自の非管理インストール、およびユーザーごとの管理インストールを変更できます。 管理者以外のユーザーは、マシンごとのインストールと、ユーザーごとの独自の (マネージドまたは非マネージドの) インストールのみを変更できます。 ユーザーは、ポリシーを設定してソースを参照できます。 詳細については、DisableBrowseAllowLockdownBrowse、および AlwaysInstallElevated ポリシーの を参照してください。

この関数は、有効なソースの一覧に新しいソースを追加するだけです。 別のソースを使用して製品をインストールした場合、現在のソースが使用できなくなるまで、新しいソースは使用されません。

指定されたソースが製品の有効なソース イメージであることを確認するのは、呼び出し元の責任です。

ユーザー名が空の文字列または NULL場合、関数は製品のマシンごとのインストールで動作します。 この場合、製品がユーザーごとの状態でのみインストールされている場合、関数はERROR_UNKNOWN_PRODUCTを返します。

ユーザー名が空の文字列ではない場合、または NULL場合は、製品のインストールが変更されたユーザーの名前を指定します。 ユーザー名が現在のユーザー名の場合、この関数はまず、製品の管理されていないインストールの変更を試みます。 製品の管理されていないインストールが見つからない場合、関数は製品の管理対象ユーザーごとのインストールを変更しようとします。 製品のユーザーごとのマネージド インストールまたはアンマネージド インストールが見つからない場合、製品がマシンごとにインストールされている場合でも、この関数はERROR_UNKNOWN_PRODUCTを返します。

この関数は、現在のユーザー以外のユーザーに対して管理されていないインストールを変更することはできません。 ユーザー名が空の文字列または NULLではなく、現在のユーザーでない場合、関数は指定されたユーザーの製品のマネージド ユーザーごとのインストールのみを確認します。 指定したユーザーに対して製品がユーザーごとの管理対象としてインストールされていない場合、この関数は、製品がマシンごとにインストールされている場合でも、ERROR_UNKNOWN_PRODUCTを返します。

手記

msi.h ヘッダーは、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして MsiSourceListAddSource を定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。

必要条件

要件 価値
サポートされる最小クライアント 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 インストーラーのバージョンで必要な最小 Windows Service Pack の詳細については、Windows インストーラーの Run-Time 要件を参照してください。
ターゲット プラットフォーム の ウィンドウズ
ヘッダー msi.h
ライブラリ Msi.lib
DLL Msi.dll

関連項目

AllowLockdownBrowse の

AlwaysInstallElevated

DisableBrowse の

インストール コンテキストの

LookupAccountName

ProductCode を する

SOURCELIST の

ソースの回復性 の