MsiAdvertiseProductA 関数 (msi.h)

MsiAdvertiseProduct 関数は、アドバタイズ スクリプトを生成するか、製品をコンピューターにアドバタイズします。 MsiAdvertiseProduct 関数を使用すると、インストーラーは、製品の割り当てまたは発行に使用されるレジストリとショートカット情報をスクリプトに書き込みます。 スクリプトは、 MsiAdvertiseProductEx を使用して、指定されたプラットフォームと一致するように記述できます。

構文

UINT MsiAdvertiseProductA(
  [in] LPCSTR szPackagePath,
  [in] LPCSTR szScriptfilePath,
  [in] LPCSTR szTransforms,
  [in] LANGID lgidLanguage
);

パラメーター

[in] szPackagePath

アドバタイズされる製品のパッケージへの完全なパス。

[in] szScriptfilePath

アドバタイズ情報を使用して作成されるスクリプト ファイルの完全なパス。 製品をコンピューターにローカルにアドバタイズするには、ADVERTISEFLAGS_MACHINEASSIGNまたはADVERTISEFLAGS_USERASSIGNを設定します。

フラグ 説明
ADVERTISEFLAGS_MACHINEASSIGN
0
すべてのユーザーが使用できる製品のマシンごとのインストールをアドバタイズするように 設定します。
ADVERTISEFLAGS_USERASSIGN
1
特定のユーザーが使用できる製品のユーザーごとのインストールをアドバタイズするように設定します。

[in] szTransforms

適用する変換のセミコロン区切りのリスト。 変換の一覧には、 @ または | のプレフィックスを付けることができます。文字を使用して、変換のセキュリティで保護されたキャッシュを指定します。 @ プレフィックスは、ソース位置のセキュリティで保護された変換と |prefix は、セキュリティで保護された完全パス変換を示します。 詳細については、「 セキュリティで保護された変換」を参照してください。 このパラメーターは null でもかまいません。

[in] lgidLanguage

ソースが複数の言語をサポートしている場合に使用するインストール言語。

戻り値

説明
ERROR_SUCCESS
関数は正常に終了しました。
アクションに関連するエラー
「エラー コード」を参照してください。
初期化エラー
初期化エラーが発生しました。
ERROR_CALL_NOT_IMPLEMENTED
このエラーは、Windows 2000 または Windows XP 以外のプラットフォームでアドバタイズ スクリプトを生成しようとした場合に返されます。 ローカル コンピューターへのアドバタイズはすべてのプラットフォームでサポートされています。

解説

注意

msi.h ヘッダーは、MSIAdvertiseProduct をエイリアスとして定義し、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

関連項目

複数パッケージのインストール