次の方法で共有


MsiSourceListForceResolutionA 関数 (msi.h)

MsiSourceListForceResolution 関数は、次にソースが必要な場合に、インストーラーに対して有効な製品ソースのソース 一覧を強制的に検索します。 たとえば、インストーラーがインストールまたは再インストールを実行する場合、またはソースから実行するように設定されているコンポーネントのパスが必要な場合などです。

構文

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

パラメーター

[in] szProduct

変更する製品の ProductCode

[in] szUserName

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

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

[in] dwReserved

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

戻り値

MsiSourceListForceResolution 関数は、次の値を返します。

意味
ERROR_ACCESS_DENIED
呼び出し元には、製品の解決を強制するための十分なアクセス権がありません。
ERROR_BAD_CONFIGURATION
構成データが破損しています。
ERROR_BAD_USER_NAME
指定したユーザーが有効なユーザーではありません。
ERROR_FUNCTION_FAILED
関数を完了できませんでした。
ERROR_INSTALL_SERVICE_FAILURE
インストール サービスにアクセスできませんでした。
ERROR_INVALID_PARAMETER
無効なパラメーターが関数に渡されました。
ERROR_SUCCESS
関数が正常に実行されました。
ERROR_UNKNOWN_PRODUCT
指定された製品が不明です。

注釈

管理者は、マシンごとのインストール、ユーザーごとの独自の非管理インストール、および任意のユーザーのユーザーごとのマネージド インストールを変更できます。 管理者以外は、マシンごとのインストールと、ユーザーごとの独自の (マネージドまたは非マネージド) インストールのみを変更できます。

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

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

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

注意

msi.h ヘッダーは、MSISourceListForceResolution をエイリアスとして定義し、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 Server 2003 または Windows XP の Windows インストーラー。 Windows インストーラーのバージョン別に必須となる最小 Windows サービス パックに関する詳細については、Windows インストーラーの実行時の要件に関する記事を参照してください。
対象プラットフォーム Windows
ヘッダー msi.h
Library Msi.lib
[DLL] Msi.dll

こちらもご覧ください

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

LookupAccountName

MsiGetComponentPath

ソースの回復性