Служба WiX не запускается: службе не удалось запуститься, убедитесь, что у вас достаточно прав

У меня есть Java-приложение. Я сделал файл scansol-agent-app.exe, из которого мне нужно сделать установщик с WiX. Ниже приведен код файла scansol-agent.wxs. Мне нужно установить это приложение в качестве службы Windows. Служба хорошо устанавливается, но не запускается. Windows показывает мне ошибку: "Не удалось запустить службу - убедитесь, что у вас достаточно прав для запуска системных служб". Я перепробовал все варианты, которые мог найти, но безрезультатно. Как я могу запустить эту услугу?

    <?xml version="1.0"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
   <Product Id="*" 
            UpgradeCode="{EB6B8302-C06E-4bec-ADAC-932C68A3A98D}" 
            Name="Scansol Agent Application Service" 
            Version="0.0.1" 
            Manufacturer="ScienceSoft" 
            Language="1033">

      <Package InstallerVersion="200" Compressed="yes" Comments="Windows Installer Package" Manufacturer="ScienceSoft"/>
      <Media Id="1" Cabinet="product.cab" EmbedCab="yes"/>

      <Property Id="WHSLogo">1</Property>

    <WixVariable Id="WixUILicenseRtf" Value="license.rtf" />

      <UI>  
        <Property Id="ApplicationFolderName" Value="WiX Demo" />
        <Property Id="WixAppFolder" Value="WiXxperMachineFolder" />
        <Property Id="WIXUI_INSTALLDIR" Value="INSTALLDIR" />
        <UIRef Id="WixUI_InstallDir" />
        <!-- Skip license dialog -->
        <Publish Dialog="WelcomeDlg"
             Control="Next"
             Event="NewDialog"
             Value="InstallDirDlg"
             Order="2">1</Publish>
        <Publish Dialog="InstallDirDlg"
             Control="Back"
             Event="NewDialog"
             Value="WelcomeDlg"
             Order="2">1</Publish>

          <!--<Property Id="DefaultUIFont">DlgFont8</Property>-->
          <TextStyle Id="DlgFont8" FaceName="Tahoma" Size="8" />
          <TextStyle Id="DlgTitleFont" FaceName="Tahoma" Size="8" Bold="yes" />
        <Dialog Id="InstallDlg" Width="370" Height="270" Title="[ProductName] Setup" NoMinimize="yes">
          <Control Id="Title" Type="Text" X="15" Y="6" Width="200" Height="15" Transparent="yes" NoPrefix="yes">
            <Text>{\DlgTitleFont}Ready to Install</Text>
          </Control>
          <Control Id="Install" Type="PushButton" X="304" Y="243" Width="56" Height="17"
            Default="yes" Text="Install">
            <Publish Event="EndDialog" Value="Return" />
          </Control>
        </Dialog>     
      </UI>

      <Directory Id="TARGETDIR" Name="SourceDir">
         <Directory Id="ProgramFilesFolder"  Name="PFiles">
            <Directory Id="INSTALLDIR" Name="ScansolAgent">
               <Component Id="ApplicationServiceInstall" Guid="{908B7199-DE2A-4dc6-A8D0-27A5AE444FEA}">
                    <File Id='ApplicationFile1' Source="scansol-agent-app.exe" DiskId='1' KeyPath='yes' Vital='yes'/>
                    <File Id="ApplicationFile2" Source="config.cfg"  DiskId='1' KeyPath='no' Vital='yes'/>
                <ServiceInstall
                    Id="ServiceInstaller"
                    Type="ownProcess"
                    Vital="yes"
                    Name="ScansolAgentService"
                    DisplayName="Scansol Agent Application Service"
                    Description="File Monitoring and Loading to server"
                    Start="auto"
                    Account="LocalSystem"
                    ErrorControl="ignore"   
                    Interactive="no"
                >
                </ServiceInstall>
                <ServiceControl Id="StartService" Start="install" Stop="both" Remove="uninstall" Name="ScansolAgentService" Wait="yes" />
              </Component>
            </Directory>
         </Directory>       
      </Directory>

      <Feature Id="DefaultFeature" Level="1" Title="ScansolAgentAppService">
         <ComponentRef Id="ApplicationServiceInstall" />
      </Feature>
   </Product>
</Wix>

2 ответа

Причин может быть много, и подавляющее большинство из них были устранены, однако у меня был случай, когда ни один из ответов или предложений не был применим к нему. В конце я нашел причину для моего случая: в теге ServiceInstall есть атрибут с именем Account, который в моем случае был LocalService, однако в моем проекте для службы Windows, в сгенерированном файле, который я назначил для моей службы учетной записи быть локальной системой. Таким образом, если учетная запись службы, заданная в проекте службы Windows, не совпадает с той, которую вы позже указали в исходном файле WiX в атрибуте учетной записи ServiceInstall, тогда установщик Windows успешно установит вашу службу, однако при запуске ее не удастся. В заключение, убедитесь, что учетные записи служб совпадают в обоих местах. И опять же, это может быть не ваш случай, но стоит перепроверить.

См. Этот ответ: https://stackoverflow.com/a/65342252/6657445 . В этом случае, поскольку это не учетная запись домена или локального пользователя, попробуйте переключить «Интерактивный» на «да». У меня без проблем установлены другие службы.

Другие вопросы по тегам