我有一个PowerShell脚本,可以在Inno Setup安装程序完成后修改一些我要运行的首选项文件。尚未找到可行的解决方案。我的目标是将其嵌入文件或代码中,因此我不必附带多个文件,只需安装程序即可。谢谢!
答案 0 :(得分:2)
要在安装完成后执行命令,请将条目添加到[Run]
section。
如果PowerShell代码很简单,则可以直接使用-Command
switch从PowerShell命令行直接执行而无需任何脚本文件:
[Run]
Filename: "powershell.exe"; Parameters: \
"-ExecutionPolicy Bypass -Command [System.IO.File]::WriteAllText('my.ini', 'foo=bar')"; \
WorkingDir: {app}; Flags: runhidden
如果需要脚本,则需要安装它(例如到安装的临时文件夹中)并从那里运行。
[Files]
Source: "setup.ps1"; DestDir: "{tmp}"
[Run]
Filename: "powershell.exe"; \
Parameters: "-ExecutionPolicy Bypass -File ""{tmp}\setup.ps1"""; \
WorkingDir: {app}; Flags: runhidden
(安装程序完成后,临时文件夹会自动删除)