如何在 Inno Setup 安装程序后运行 PowerShell 脚本

问题描述 投票:0回答:1

我有一个 PowerShell 脚本,它修改了我在 Inno Setup 安装程序完成后尝试运行的一些首选项文件。尚未找到有效的解决方案。我的目标是将其嵌入到文件或代码中,这样我就不必发送多个文件,只需发送安装程序即可。谢谢!

windows powershell installation inno-setup
1个回答
19
投票

要在安装完成后执行命令,请将条目添加到

[Run]
部分


如果 PowerShell 代码很简单,您可以直接从 PowerShell 命令行使用

-Command
开关:

执行它,无需任何脚本文件
[Run]
Filename: "powershell.exe"; Parameters: \
  "-ExecutionPolicy Bypass -Command [System.IO.File]::WriteAllText('my.ini', 'foo=1')"; \
  WorkingDir: {app}; Flags: runhidden

关于

-ExecutionPolicy Bypass
:由于您将在不受您控制的系统上执行此操作,因此某些/大多数系统可能具有默认的 PowerShell 设置,从而限制命令的执行。为了克服这个问题,你需要这个开关。


如果您需要脚本文件,则需要“安装”它(例如安装到安装的临时文件夹)并从那里运行它。

[Files]
Source: "setup.ps1"; DestDir: "{tmp}"

[Run]
Filename: "powershell.exe"; \
  Parameters: "-ExecutionPolicy Bypass -File ""{tmp}\setup.ps1"""; \
  WorkingDir: {app}; Flags: runhidden

(安装程序完成后,临时文件夹会自动删除)

© www.soinside.com 2019 - 2024. All rights reserved.