我想从合并模块中安装服务。服务StartName和Password应由用户配置。
我的安装程序配置如下
我的模块具有标识C68FD1DE_B6A0_4BC1_A7BB_D7DBF65F2DB7
并定义了两个属性SERVICE_PASSWORD和SERVICE_USER,两者都具有默认值NOT DEFINED
。
我添加了两个“带格式化的属性集”自定义操作,并将这些属性配置为目标。
我还在服务安装上配置了属性。
我的设置加载合并模块并在module.msm上设置属性SERVICE_PASSWORD和SERVICE_USER。
执行时我得到错误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]:PROPERTY CHANGE:添加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]:PROPERTY CHANGE:添加[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,Dependencies = ,, StartName = NOT DEFINED ,密码= * *** ,描述= ,,)
当我有工作财产时,它会说修改而不是添加。
MSI(s)(64:9C)[12:06:03:108]:PROPERTY CHANGE:修改SERVERNAME.ABB6A92E_9A58_4320_981C_149C0F4EE78A属性。它的当前值是'defaultserver'。它的新价值:'targetserver'。
似乎正确的值传递给我的合并模块但未使用。 以这种方式参数化的其他合并模块正在工作,但这些属性不用于安装服务。那么我错过了什么才能让它发挥作用?