How to install a Windows service with Inno Setup?

后端 未结 2 727
渐次进展
渐次进展 2020-12-24 09:39

I wrote a batch script to execute after my installation that is made with Inno Setup. The problem is that I have the following command line for my service creation:

相关标签:
2条回答
  • 2020-12-24 09:57

    You could try to add this command to [RUN] section (as TLama suggested) or create AfterInstall function in [CODE] section.

    [Run] 
    Filename: "{cmd}"; Parameters: "sc create MySQL start= auto DisplayName= MySQL 
    binPath= ""C:\MyApp\MySQL 5.5\bin\mysqld"" 
    --defaults-file=""C:\MyApp\MySQL 5.5\my.ini"""; 
    Flags: runhidden
    
    0 讨论(0)
  • 2020-12-24 10:00

    Rather than calling SC directly, it's cleaner (and easier to deal with any errors or service dependencies) to use the API. Note that this example assumes that you're using ANSI Inno, but it's fairly straightforward to modify this for Unicode.

    Personally, though, I prefer to build install/start/stop/uninstall commands into the service executable itself, making it self-registering. Obviously this isn't possible to do yourself for a third-party service, but you could check to see if it already supports something like this.

    One final point is that you must not hard-code the path to a C: folder. You should be using {app} instead.

    0 讨论(0)
提交回复
热议问题