2

マージ モジュール内からサービスをインストールしたいと考えています。サービスの StartName と Password は、ユーザーが構成する必要があります。

私のインストーラーは次のように構成されています

モジュール.msm

私のモジュールには Id がC68FD1DE_B6A0_4BC1_A7BB_D7DBF65F2DB7あり、2 つのプロパティ SERVICE_PASSWORD と SERVICE_USER が定義されています。両方ともデフォルト値NOT DEFINEDです。2 つの「フォーマット済みのプロパティ セット」カスタム アクションを追加し、これらのプロパティをターゲットとして構成しました。また、サービスのインストール時にプロパティを構成しています。

setup.exe

私のセットアップでは、マージ モジュールを読み込み、プロパティ SERVICE_PASSWORD と SERVICE_USER を module.msm に設定します。

実行時にエラーが発生Service 'service.exe' could not be installed. Verify that you have sufficient privileges to install system services.し、ログを確認したところ、次の重要なエントリが見つかりました。

MSI (c) (88:DC) [10:36:57:178]: プロパティの変更: SERVICE_PASSWORD プロパティを追加します。その値は「パスワード」です。

MSI (c) (88:DC) [10:36:57:178]: プロパティの変更: SERVICE_USER プロパティを追加します。その値は「.\user」です。

MSI (s) (70:04) [10:38:18:771]: アクションを実行中: ServicePassword.C68FD1DE_B6A0_4BC1_A7BB_D7DBF65F2DB7

MSI (s) (70:04) [10:38:18:781]: プロパティの変更: [SERVICE_PASSWORD] プロパティを追加します。その値は「パスワード」です。

MSI (s) (70:04) [10:38:18:781]: アクションを実行中: ServiceUser.C68FD1DE_B6A0_4BC1_A7BB_D7DBF65F2DB7

MSI (s) (70:04) [10:38:18:791]: プロパティの変更: [SERVICE_USER] プロパティを追加します。その値は「ユーザー」です。

MSI (s) (70:04) [10:38:29:391]: op を実行しています: ServiceInstall(Name=service,DisplayName=service,ImagePath="C:\Program Files\company\product\service.exe", ServiceType=16,StartType=2,ErrorControl=1,,依存関係=,,StartName= 未定義,パスワード= * *** ,説明=,,)

作業中のプロパティがある場合、追加ではなく変更中と表示されます。

MSI (s) (64:9C) [12:06:03:108]: プロパティの変更: SERVERNAME.ABB6A92E_9A58_4320_981C_149C0F4EE78A プロパティを変更しています。現在の値は「defaultserver」です。その新しい値: 'targetserver'。

正しい値がマージ モジュールに渡されているようですが、使用されていません。このようにパラメータ化された他のマージ モジュールは機能していますが、プロパティはサービスのインストールには使用されません。それで、これを機能させるために何が欠けていますか?

4

0 に答える 0