Inno设置和NSSM服务集成

时间:2016-05-03 11:46:22

标签: windows service installation inno-setup nssm

我有一个应用程序可以使用Inno安装程序打包到设置文件中。应用程序必须在Windows上作为服务工作。我正在使用NSSM服务管理器在单台计算机上完成它。但是在Inno安装包中,我无法找到任何可行的技巧。

与NSSM有什么关系,或者是否可以使用Inno脚本服务?

1 个答案:

答案 0 :(得分:2)

  1. 下载NSSM
  2. 解压缩Zip文件,然后将nssm.exe复制到您的源路径(Inno Setup脚本从中获取源文件)。
  3. 创建一个蝙蝠文件,以允许nssm将您的应用设置为以下服务:

    nssm install "ServiceName" "YourAPP.EXE"
    nssm set "ServiceName" AppDirectory %CD%
    nssm start "ServiceName"
    del "%~f0"
    

    注意: del "%~f0"要在安装完成后删除bat文件,如果您不希望这样做,请从bat文件中删除该行

  4. 在源路径中添加上一个bat文件。

  5. 向Inno Setup脚本添加新的源,如下所示:

    [Files]
    Source: "..\YOUR-SOURCE-PATH\file.bat"; DestDir: "{app}";
    Source: "..\YOUR-SOURCE-PATH\nssm.exe"; DestDir: "{app}";
    
  6. [Run]部分下添加蝙蝠文件以设置服务并按如下所示启动您的应用程序:

    Filename: "{app}\file.bat"; \
        Flags: nowait postinstall hidewizard runhidden runascurrentuser; \
        Description: "{cm:LaunchProgram,{#StringChange(MyAppName, '&', '&&')}}"
    

我希望它会有用,不得不感谢@MartinPrikryl