我正在使用 inno-setup 安装一个程序,该程序需要在 Win7 上解锁端口 4326(允许 acl 访问),以便可以通过 HTTP 对端口 4326 进行 GET 操作。
我有一个管理员可以运行的 powershell 脚本来解除对端口的阻塞。但这不能用作 inno-setup [run] 命令(因为本地计算机通常会禁用脚本运行)。(即 powershell.exe -nowait & script.ps1)
我可以设置目标机器中的一些注册表项来解除对端口的阻塞吗?由于 setup.exe 以管理员身份运行,因此我可以在 inno-setup 中轻松完成。我猜一个独立的EXE可以做同样的事情。
这是我想用在 HKLM 中设置注册表设置来替换的脚本。
set-alias netsh c:\Windows\System32\netsh.exe
$PORT = 4326
$domain = $Env:userdomain
$name = $Env:username
$ErrorActionPreference = "Continue";
netsh http delete urlacl url=http://*:$PORT/
netsh http add urlacl url=http://*:$PORT/ user=$domain\$name