如何在 Inno Setup 中运行 CMD 命令而不打开新窗口

2023-12-06

我正在使用 Inno Setup 安装程序来设置一个安装程序文件,该文件可以调用我刚刚通过其脚本安装的 .exe,并在安装后立即使用以下命令启动它:

[Run]
Filename: "{cmd}"; Description: "{cm:LaunchProgram,3mtxmail}"; \
    Flags: nowait postinstall skipifsilent runascurrentuser; \
    Parameters: "/b /k "" ""{app}\my.exe"" -c ""{app}\default.conf"" "" "

When my.exe正在运行时,它不需要任何接口,并且应该只侦听特定端口上的任何流量,并将该流量信息写入日志文件。

但是,当我执行安装程序并启动程序时,它仍然会弹出一个新的控制台窗口,我认为这是/b应该阻止。我预计不会看到这个新的控制台窗口,实际上屏幕上也看不到任何内容。

From https://technet.microsoft.com/en-us/library/bb491005.aspx, the /b应该是指示不为该命令打开新窗口的标志。

正确的语法是什么?


看起来您不需要cmd.exe为了任何东西。直接运行您的应用程序:

[Run]
Filename: "{app}\my.exe"; Parameters: "-c ""{app}\default.conf""" \
    Description: "{cm:LaunchProgram,3mtxmail}"; \
    Flags: nowait postinstall skipifsilent runascurrentuser; 

不过,如果您的应用程序是控制台应用程序,它将打开自己的控制台。为了防止这种情况,添加runhidden flag.

您实际上可以使用runhidden标志甚至隐藏cmd.exe控制台窗口。但如果你不需要cmd.exe,你不应该使用它。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Inno Setup 中运行 CMD 命令而不打开新窗口 的相关文章

随机推荐