2013-01-07 66 views
0

我有一個NSIS腳本試圖包含位於不同文件夾中的.NSI文件。包含與腳本不在同一目錄中的文件

我的問題:當我編譯我的腳本時,我收到編譯錯誤!include: could not find: "../Utilities.nsi"。該文件存在並位於我指定的正確位置(在父目錄中 - 退後一步)。

如何包含位於另一個目錄中的文件?我希望它有可能。

!include "../Utilities.nsi" # include error: '!include: could not find: "../Utilities.nsi"' 

InstallDir "abc" 
Name  "def"   
OutFile  "def.exe" 

Section 
    DetailPrint "Hello World" 
SectionEnd 
+1

您是否閱讀過手冊?它說:「該命令將包含'文件',就好像它是原始腳本的一部分。請注意,如果某個文件包含在另一個目錄中,則當前目錄仍然是編譯腳本的位置(而不是包含的文件所在的位置)。如果編譯器找不到該文件,它將在每個包含目錄中查找它。請參閱!addincludedir以獲取更多信息。如果使用/非致命開關並且沒有找到文件,將發出警告而不是錯誤。「另外,本手冊中的示例不使用引號 - 您是否嘗試刪除它們?另外,」/「= >「\」 – 2013-01-07 02:34:00

+0

@torazaburo謝謝!addincludedir作品。您應該發佈回答,以便我可以接受。 –

回答

1

manual說,這大約!include

這個命令將包括「文件」,就好像它是原來 腳本的一部分。請注意,如果某個文件包含在另一個目錄中,則當前目錄仍然是編譯腳本的位置(不是包含文件所在的 )。如果編譯器找不到文件 ,它將在每個包含目錄中查找它。請參閱!addincludedir for 更多信息。如果使用/非致死性開關和沒有文件 發現,將發出警告,而不是發出錯誤的「

此外,手動不使用引號的例子 - 你嘗試 刪除他們?還有,「/」=>「\」。

+0

在!addincludedir中反斜槓切換幫助了我。 –

相關問題