1
我有大量的NSIS安裝腳本(.nsi文件),它們只是定義一堆常量,然後主安裝程序邏輯駐留在每個安裝程序中都包含的包含文件(.nsh)中。其中包括文件看起來是這樣的:如何在NSIS安裝腳本中創建一個常量數組?
!ifdef ABC_SUBFOLDER
RMDir /r "$ABCPath\Data\${ABC_SUBFOLDER}"
SetOutPath "$ABCPath\Data\${ABC_SUBFOLDER}"
File /r "${LOCAL_FOLDER}\ABC\${ABC_SUBFOLDER}\*.*"
!endif
!ifdef ABC_SUBFOLDER2
RMDir /r "$ABCPath\Data\${ABC_SUBFOLDER2}"
SetOutPath "$ABCPath\Data\${ABC_SUBFOLDER2}"
File /r "${LOCAL_FOLDER2}\ABC\${ABC_SUBFOLDER2}\*.*"
!endif
!ifdef ABC_SUBFOLDER3
RMDir /r "$ABCPath\Data\${ABC_SUBFOLDER3}"
SetOutPath "$ABCPath\Data\${ABC_SUBFOLDER3}"
File /r "${LOCAL_FOLDER3}\ABC\${ABC_SUBFOLDER3}\*.*"
!endif
...等多達可能會或可能不會在頂級.nsi文件中定義的15子文件夾。我的問題是,NSIS中有沒有更好的語法來實現這個功能,而且每次我需要增加子文件夾的數量時都不需要剪切和粘貼?
有趣的想法。它也需要使用!ifdef語句,但是如果我可以把它放在一個循環中,使用遞增的S {FOLDERNUMBER},那麼它可以做我需要的。如果它能起作用,將會給它一個答案並標記爲答案 – 2008-10-03 11:42:57