我有两个二进制文件,必须为它们创建一个服务.我尝试使用如何使用Inno Setup安装Windows服务的 "sc create"解决方案?
但它对我不起作用.它在安装结束时卡住了.我究竟做错了什么?
这是我的代码:
Filename: {cmd}; Parameters: "sc create srvname start= auto DisplayName= mysrv binPath= {app}\mybinary.exe" ; Flags: runhidden
Run Code Online (Sandbox Code Playgroud)
我尝试使用cmd而不是{cmd}- 没有变化.
我没有在我提到的解决方案中尝试Pascal代码.我将它作为最后的手段.
rak*_*esh 25
我使用了这段代码,我的两个服务都是安装和卸载:
[run]
Filename: {sys}\sc.exe; Parameters: "create mysrv start= auto binPath= ""{app}\mysrv.exe""" ; Flags: runhidden
[UninstallRun]
Filename: {sys}\sc.exe; Parameters: "stop mysrv" ; Flags: runhidden
Filename: {sys}\sc.exe; Parameters: "delete mysrv" ; Flags: runhidden
Run Code Online (Sandbox Code Playgroud)
这解决了我的问题,所以为什么我应该在这种情况下使用Pascal.
Dea*_*nna 11
你有没有理由试图通过它{cmd}?
添加/C参数并根据需要引用其余参数,或者仅sc.exe使用所需参数运行.
[Run]
Filename: "sc.exe"; Parameters: "create srvname start= auto DisplayName= mysrv binPath= {app}\mybinary.exe" ; Flags: runhidden
Run Code Online (Sandbox Code Playgroud)
请注意,安装服务的正确方法是本答案中提到的API,它允许您检测和处理错误.
| 归档时间: |
|
| 查看次数: |
21949 次 |
| 最近记录: |