在Inno Setup中执行命令后如何保持控制台窗口

时间:2016-09-27 09:36:12

标签: cmd installer inno-setup

我有一个类似的脚本:

Filename: "{cmd}"; Parameters: "/C "" sqlcmd -S {code:ServerName}  -U {code:UserLOG} """ ; \
    Flags: nowait    skipifsilent

如何在用户看到之前保留控制台窗口?

我需要向用户显示该控制台窗口上的操作结果。

2 个答案:

答案 0 :(得分:2)

使用pause Windows命令,例如:

Filename: "{cmd}"; Parameters: "/C ""sqlcmd ... & pause"""; Flags: nowait skipifsilent

请注意,您实际上无需通过sqlcmdcmd.exe)运行{cmd}。您可以直接运行它。但要将sqlcmdpause合并,您需要cmd.exe

如果命令本身需要空格(如果需要使用{app}\MyProg.exe),请使用以下语法:

Filename: "{cmd}"; Parameters: "/C """"{app}\MyProg.exe"" ... & pause"""; ...

答案 1 :(得分:1)

如果您调用cmd /K ...而不是cmd /C ...,您的安装脚本将打开一个新的控制台(在控制台窗口内),该控制台不会自动关闭,必须由用户关闭。因此,您可以读取输出。

您可以在以下位置找到完整的参数列表: https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/cmd