NSIS - CopyFiles指令不使用变量作为参数?

时间:2014-11-15 19:14:18

标签: nsis

我想将文件/文件夹从enduser-system的一个文件夹复制到enduser-system的另一个文件夹。 但是,当将$ 0,$ 1等变量作为源参数传递时,CopyFiles指令似乎无效。

...
SetRegView 64
ReadRegStr $0 HKLM "${PRODUCT_HOME_ROOT}\$1" "License"
MessageBox MB_OK "$0"     
CreateDirectory '"$INSTDIR\application\license"'
CopyFiles "$0" "$INSTDIR\application\license"

检查存储在$ 0中的字符串,它与文件的绝对路径相同。 如果我将source参数作为“C:\ path_to_folder”传递,则CopyFiles指令正在按预期工作。 我做错了什么?

1 个答案:

答案 0 :(得分:1)

变量应该有效但存储在该变量中的实际字符串不应该是双引号,它应该只使用反斜杠(\),而不是正斜杠(/)。

Section
InitPluginsDir
CreateDirectory "$PluginsDir\Src"
File "/oname=$PluginsDir\Src\test.txt" "${__FILE__}"
CreateDirectory "$PluginsDir\Dst"
StrCpy $0 "$PluginsDir\Src\test.txt"
CopyFiles "$0" "$PluginsDir\Dst"
ExecShell explore "$PluginsDir\Dst"
MessageBox MB_OK "Done?"
Quit
SectionEnd