首页 > 解决方案 > 如何在 Inno Setup 中运行批处理文件,同时在每个命令执行时显示进度

问题描述

编辑:我找不到解决方案,但马丁的方法看起来只是这种情况的解决方案。

我正在尝试执行大约 30-40 个命令行参数。我不想用“&&”分隔命令,因为在一行中所有这些代码看起来都非常复杂。

[Run]
Filename: "{cmd}"; Parameters: "/c mkdir ""{app}\Folder1"" && mkdir ""{app}\Folder2"" && mkdir     
""{app}\Folder3"" mkdir ""{app}\Folder4"" && mkdir ""{app}\Folder5"" && mkdir ""{app}\Folder6"" && mkdir ""{app}\Folder7"""

如您所见,它看起来很复杂。

mkdir命令是示例。我的项目中的每个命令都不同。)

我怎样才能实现它?

我可以使用 .cmd 或 .bat 文件并运行它,但不想要它,因为我想在安装程序上看到进度条。我的命令需要一些时间才能完成执行。

期待帮助,谢谢!

标签: batch-fileinno-setuppascalscriptinno-setup-v6

解决方案


如果要独立执行多个命令,请在[Run]每个命令的部分添加单独的条目:

[Run]
Filename: "{cmd}"; Parameters: "/c mkdir ""{app}\Folder1""
Filename: "{cmd}"; Parameters: "/c mkdir ""{app}\Folder2""
Filename: "{cmd}"; Parameters: "/c mkdir ""{app}\Folder3""
Filename: "{cmd}"; Parameters: "/c mkdir ""{app}\Folder4""
Filename: "{cmd}"; Parameters: "/c mkdir ""{app}\Folder5""
Filename: "{cmd}"; Parameters: "/c mkdir ""{app}\Folder6""
Filename: "{cmd}"; Parameters: "/c mkdir ""{app}\Folder7""

虽然用于创建文件夹,但有一个专门的[Dirs]部分

[Dirs]
Name: "{app}\Folder1"
Name: "{app}\Folder2"
Name: "{app}\Folder3"
Name: "{app}\Folder4"
Name: "{app}\Folder5"
Name: "{app}\Folder6"
Name: "{app}\Folder7"

推荐阅读