我正在嘗試使用#ifdef
標記在Visual C++ .rc文件中的幾個不同的默認圖標之間切換。我可以通過命令行將預處理器定義傳遞給資源編譯器嗎?
使用MSBuild通過命令行創建切換#define值的構建。
我遇到的困難是使用Visual Studio 2010爲了將預處理器定義傳遞給資源編譯器,必須在項目設置(配置屬性 - >資源 - >常規)中定義它。
這使得難以使用#ifdef
標籤,因爲使用這種方法它總是會在資源編譯器中定義。
我很想將其定義爲一個值,以便我可以使用預處理器#if SOMEVALUE == 4
可能會工作,但似乎無法找到一種方法將預處理器定義+值通過命令行傳遞給MSBuild。
有沒有人知道一種方法來將預處理器定義直接傳遞給資源編譯器或通過命令行爲msbuild定義預處理器定義值的方法?
不幸的是要傳遞的#define值項目編譯器不會傳遞給資源編譯器。即,編譯項目時,「/ T」TESTAPPLE = 15「將TESTAPPLE設置爲值15.但是,在資源編譯器中,TESTAPPLE剛剛定義,但不具有值15. – Maixy
huh,guess I haven沒有足夠的資源編譯器。 http://www.cmake.org/pipermail/cmake/2011-January/042093.html暗示它可以運行'/ d「CMAKE_INTDIR = \」Release \「」',但不是授權源。 –