5

有没有通过变量提及文件来包含文件?我是说

StrCpy $1 "bla.nsh"
!include $1

?

或者可能获取由另一个变量调用的变量的值,例如:

StrCpy $1 "EN"
StrCpy $2 ${LANG_${1}_WELCOME_MESSAGE}

?

谢谢。

4

2 回答 2

4

变量只能在运行时使用(在最终用户机器上运行),您需要使用定义:

!define foo "bar"
!include "${foo}.nsh"

编辑:

LangString如果您想添加自定义翻译字符串,您应该使用该指令,您可以在运行时使用$(mystringid).

于 2013-08-18T17:53:33.600 回答
3

事实上,安德斯是对的。想想看,当编译器编译你的代码时,它需要知道它需要包含在你的 EXE 文件中的文件。

关于变量,您只能与定义一起使用。再次,因为在编译时,编译器将编译所有需要的(正在使用的)变量/定义,并且您不能告诉他使用从未声明过的变量。它与服务器端语言略有不同,因为您正在编译并将您的代码打包到您的计算机中组装的 EXE 文件中。

于 2013-08-19T06:51:51.810 回答