2010-05-15 46 views
1

使用以下僞代碼:使用預處理器指令以限定輸出路徑

#define BUILD_PATH "C:/MyBuild/" 
#define BUILD_NAME "mydll.dll" 
// Set build path here 

表示我怎樣想建立當前項目(一個dll)到C:/MyBuild/mydll.dll,如何我是否僅通過使用預處理器指令來完成此操作?

+0

你的意思是「構建」在鏈接?你想使用預處理器鏈接一個DLL?咦?或者你只是想連接這兩個令牌?使用這個:'const char path [] = BUILD_PATH BUILD_NAME;'你爲什麼要使用預處理器? #define被認爲是有害的。使用簡單的'const char []'。 – Stephen 2010-05-15 21:40:24

+0

我的意思是,使用預處理器指令設置屬性頁 - >配置屬性 - >鏈接器 - >常規 - >輸出文件的等效項。我想如果我可以從CPP腳本設置一個環境變量,就可以用同樣的方法完成。 – Gbps 2010-05-15 21:48:19

+0

*嗅探*你也可以贊成我:D – Goz 2010-05-15 22:01:56

回答

1

我可能會誤解,但我真的不明白爲什麼要做到這一點,但它是可行的:

#pragma comment(linker, "/out:c:\mydll.dll") 

我不能再迭代足夠的正是你不想多少做此雖然...

如果你想通過預處理器信息獲取輸出路徑,那麼恐怕......你不能。該信息來自預處理器之後的幾個步驟,所以預處理器無法獲得該信息。

+0

它可以用作一個小型項目模板的配置文件。我敢肯定,這是一個非常可疑的方式,但對於我分配給這個用戶的觀衆來說,我覺得他們會希望將所有這些信息設置在主文件中,而不是翻閱屬性頁面來設置每次連接器信息他們複製並粘貼模板。 – Gbps 2010-05-15 21:59:47