ServiceInstall或ServiceControl问题

时间:2009-03-04 04:50:24

标签: wix windows-installer wix3

在安装过程中,我使用ServiceInstall和ServiceControl标签安装我的服务。但是,我的服务没有运行。我收到错误消息“请检查您是否有足够的权限启动服务”。但是,我在管理员组。我正在使用Wix ver 3.0。

代码段在这里,

<File Id='myexe' Name='myexe.exe' DiskId='1'
        Source='myexe.exe' Vital='yes'>
</File>

<ServiceInstall Id='myService' DisplayName='MySampleService' 
                Name='MySampleService' 
                ErrorControl='normal' Start='auto' 
                Type='ownProcess' Vital='yes' />

     <ServiceControl Id="StartService"
                  Name="MySampleService" Start="install" Wait="yes" />
     <ServiceControl Id="StopService" Name="MySampleService"
                  Stop="both" Wait="yes" Remove="uninstall" />

请帮帮我。

4 个答案:

答案 0 :(得分:2)

这是因为任何原因,当服务无法安装或启动时(如果您要告诉它执行此操作)时获得的一般错误。这非常令人沮丧。调试的唯一方法是慢慢删除依赖项,直到事情最终起作用。通常,该服务需要一些代码(GAC中的程序集?),直到以后才完全配置。

我通常通过查看Services.msc进行调试,并在错误消息启动时尝试启动服务。这通常会提供比Windows Installer更好的错误消息。

答案 1 :(得分:2)

不要尝试启动.NET服务,具体取决于安装到全局程序集缓存GAC中的组件,ServiceStart来得太早

答案 2 :(得分:0)

您还可以检查Window Eventlog以确定问题。如果问题是缺少二进制文件,您可以使用Depends找出遗漏的内容。

答案 3 :(得分:0)

尝试使用util:User元素

例如:

<util:User Id="myServiceUser" Name="[USERNAME]" LogonAsService="yes" UpdateIfExists="yes" CreateUser="no"
                   FailIfExists="no" />