如何在Inno Setup中的代码中重命名文件?

时间:2017-06-05 17:46:47

标签: cmd inno-setup pascalscript

我需要将文件重命名为zip,我尝试使用此代码但不起作用。

 Exec('cmd.exe', 'rename '+ExpandConstant('{app}\scripts\set.bat'+' set.zip'), '', SW_SHOW,
      ewWaitUntilTerminated, ResultCode);

我找到了在[Run]部分执行此操作的方法,但我需要在[Code]部分执行此操作。

1 个答案:

答案 0 :(得分:2)

  1. 您需要引用路径,因为{app}通常包含空格(Program Files)。

  2. 在命令之前需要/C命令行参数。

  3. Exec('cmd.exe',
         '/C rename ' + AddQuotes(ExpandConstant('{app}\scripts\set.bat')) + ' set.zip',
         '', SW_SHOW, ewWaitUntilTerminated, ResultCode);
    

    虽然@Alex正确评论,但请改用RenameFile

    RenameFile(ExpandConstant('{app}\scripts\set.bat'), ExpandConstant('{app}\scripts\set.zip'));