2011-04-14 47 views
3

如何通過代碼,使用編譯器指令或通過項目選項更改像$(Test)這樣的用戶變量?使用編譯器指令更改用戶變量?

我已經定義了這個變量,它有時指向一個主幹svn源代碼,有時它指向一個標籤svn源。我在Library Path中使用這個var。當我打開trunk項目時,我需要將var設置爲主幹svn源,並且當我打開標記svn項目時,我需要將var設置爲標記svn。幹線和標籤中的兩個項目都是相同的,但幹線有一些修改(這是我正在使用的代碼,它尚未準備好使用)。

我不想想要去工具選項來設置它,每次我改變項目。

編輯:

我知道我可以使用的項目源路徑,而不是庫路徑,但我需要所有來源是庫路徑上,所以我可以很容易地調試使用我的框架的項目。

+0

你不是很清楚你要在這裏做什麼。 '$(Test)'是指一個名爲'Test'的環境變量,與編譯器完全無關。 IDE在編譯時使用它來解析路徑(目錄)。編譯器定義不會做任何事情來改變環境。請編輯你的問題,以澄清你想要做的事情。 – 2011-04-14 21:58:22

+0

我不知道如何使用編譯器指令來做到這一點。但是如果你想要另一種方法:首先你必須注意哪些變量只有在你的應用程序在delphi IDE下運行時纔可用,現在你可以使用'GetEnvironmentVariable'函數讀取這些變量,並使用'SetEnvironmentVariable'設置值。 ,所以你可以在你的代碼'SetEnvironmentVariable('Test','C:\');' – RRUZ 2011-04-14 21:59:31

+0

編寫這樣的東西,以澄清我在找什麼。 – 2011-04-14 23:17:52

回答

0

我可能會創建兩個批處理文件。每個人都會首先將Test環境變量設置爲必要的值,然後啓動IDE。

然後每次我需要使用一組不同的svn源文件時,我必須(通過相應的批處理文件啓動IDE)。

+0

這就是我們所做的,它似乎是最不可怕的選擇。有一段時間,我們有一個exe文件,它以一種通用的方式編輯了dof文件,但它經常打破,這比它的價值更麻煩。最好讓一個人做,並且可能會有一個腳本檢查它。 – 2011-04-15 09:10:08

0

問題的直接答案是:這是不可能的!

但可能是這是問題的解決方案:您可以有特殊的構建配置來處理您的特定請求。也許你可以在現有的構建配置上使用選項集來建立正確的路徑。