xbarns
23rd July 2012 10:40 UTC
Prevent Resolution of Variable
Hi all,
i am using
FileWrite $0 "LangString CheckDBName {LANG_ENGLISH} $\"Please check DB Name$\""
to create a set of translation files (comes out of a database we use for tracking translations).
In the file the string will look like this:
LangString CheckDBName 1033 "Please check DB Name"
is there a way to prevent the resolution of ${LANG_ENGLISH} to 1033 ?
Thanks a lot
xBarns
Anders
23rd July 2012 13:01 UTC
You mean define?
You can use this hack:
!define dollar $
Foo ${dollar}{LANG_ENGLISH}
xbarns
23rd July 2012 13:06 UTC
That does the trick
Thanks a lot!
Yathosho
23rd July 2012 14:12 UTC
Originally posted by Anders
You can use this hack:
what's wrong with $${LANG_ENGLISH}?
xbarns
23rd July 2012 14:18 UTC
Originally posted by Yathosho
what's wrong with $${LANG_ENGLISH}?
I tried that first but it did not work :(
MSG
23rd July 2012 15:03 UTC
Only works to escape a variable, I think.
Yathosho
23rd July 2012 22:12 UTC
Originally posted by MSG
Only works to escape a variable, I think.
i'm pretty sure i got it working with a definition in a script of mine - otherwise my entire installer wouldn't work, but it does
MSG
24th July 2012 05:31 UTC
!define foo bar
detailprint "$${foo}"
Compiler: unknown variable/constant "bar" detected, ignoring (D:\Projects\MB\Installer\test.nsi:22)
Installer: $bar
detailprint "$$${foo}"
Compiler: no warnings
Installer: $bar
So no, doesn't work.
T.Slappy
24th July 2012 06:17 UTC
Originally posted by Anders
You mean define?
You can use this hack:
Heh, nice trick :)