Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows 如何在Inno安装程序安装后运行PowerShell脚本_Windows_Powershell_Installation_Inno Setup - Fatal编程技术网

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

Windows 如何在Inno安装程序安装后运行PowerShell脚本,windows,powershell,installation,inno-setup,Windows,Powershell,Installation,Inno Setup,我有一个PowerShell脚本,它修改了我在Inno安装程序安装完成后试图运行的一些首选项文件。尚未找到解决此问题的有效方法。我的目标是将其嵌入到文件或代码中,这样我就不必发送多个文件,只需安装程序。谢谢 要在安装完成后执行命令,请在中添加一个条目 如果PowerShell代码微不足道,则可以直接从PowerShell命令行执行它,而无需任何脚本文件,方法是: [运行] 文件名:“powershell.exe”;参数:\ “-ExecutionPolicy Bypass-Command[Sy

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

要在安装完成后执行命令,请在中添加一个条目


如果PowerShell代码微不足道,则可以直接从PowerShell命令行执行它,而无需任何脚本文件,方法是:

[运行]
文件名:“powershell.exe”;参数:\
“-ExecutionPolicy Bypass-Command[System.IO.File]::writealText('my.ini','foo=1')”\
工作目录:{app};旗帜:runhidden
关于:由于您将在不受控制的系统上执行此操作,因此某些/大多数系统可能具有默认PowerShell设置,从而限制命令的执行。要克服这个问题,你需要这个开关


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

[文件]
资料来源:“setup.ps1”;DestDir:“{tmp}”
[运行]
文件名:“powershell.exe”\
参数:“-ExecutionPolicy Bypass-File”“{tmp}\setup.ps1”“\
工作目录:{app};旗帜:runhidden

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

谢谢,第二种方法非常有效!我想嵌入整个东西,但我的PowerShell脚本已经有这么多级别的引号和转义字符,在转义到另一个级别时遇到了麻烦。