在innosetup安装程序中,我的目标是配置Windows防火墙以打开适合我的软件的端口
[Run]
Filename: "{sys}\netsh.exe"; Parameters: "firewall set portopening protocol=TCP port=""{code:GetServerPort()}"" name=NxTCP mode=ENABLE"; StatusMsg: "Opening TCP Port ""{code:GetServerPort()}"; Flags: runhidden
[Code]
function GetServerPort(): String;
begin
Result := "5555"; //obtained with the Wizard
end;
我收到此错误
未找到所需的函数或过程'GetServerPort()'。
或者如果我在通话中放下()
“ GetServerPort”的原型无效
答案 0 :(得分:2)
此代码对我有用:
[Run]
Filename: "{sys}\netsh.exe"; Parameters: "firewall set portopening protocol=TCP port=""{code:GetServerPort}"" name=NxTCP mode=ENABLE"; StatusMsg: "Opening TCP Port ""{code:GetServerPort}"; Flags: runhidden
[Code]
function GetServerPort(Value: string): String;
begin
Result := '5555'; //obtained with the Wizard
end;
您在[Run]
中的函数调用格式不正确。 {code:XXX}
基本上是一个Check
参数,并记录在http://www.jrsoftware.org/ishelp/topic_scriptcheck.htm