我正在通过 powershell 脚本运行我的 setup.iss 文件:
if ($something -eq 'test') {
$usePort= 1
}
if ($something -ne 'dev') {
$usePort= 0
}
& $innoiscc ".\setup.iss" /DUSEPORT="$usePort"
在我的 setup.iss 中,我想使用该 USEPORT 来确定是否需要添加下一步:
#ifndef USEPORT
#define USEPORT "0"
#endif
(... not relatable code)
if (#USEPORT = "1") then
begin
do_something
end;
带有 #ifndef 的行只是为了确保每次 USEPORT 都会有任何值,因为从 .ps1 文件中,也有可能 USEPORT 不会被声明。 我在网上不断收到错误“Char error”
if (#USEPORT = "1") then
我也尝试过:
if (#USEPORT = 1) then
if (#USEPORT == 1) then
if (#USEPORT == "1") then
具有相同的结果,并且错误指向同一行。 当我尝试删除该 # 字符时,如下所示:
if (USEPORT = 1) then
if (USEPORT == 1) then
if (USEPORT == "1") then
我遇到错误了
未知标识符“USEPORT”
出了什么问题?
使用
#if..#endif
代替 if
,例如:
#ifndef USEPORT
#define USEPORT "0"
#endif
(... not relatable code)
#if (USEPORT == "1")
do_something
#endif