有没有办法在devenv命令行中添加额外的预处理器#define?
答案 0 :(得分:12)
我不完全确定你的意思是vcbuild命令行,但如果你的意思是Visual C ++命令行编译器,那么你可以通过add / Dxxxx添加定义,例如
cl.exe /DSHAREWARE ....
基于评论的补充答案:
您应该能够使用额外的预处理器定义来设置CL环境变量:
SET CL=/DSHAREWARE
devenv ....
可以在MSDN
找到单纯的信息答案 1 :(得分:1)
#defines在Visual Studio项目文件(.dsp或.vcproj文件)中定义。这是一个简单的文本文件。因此,您可以从脚本编辑项目文件,然后调用devenv.exe。
答案 2 :(得分:1)
在项目设置中,添加以下预处理器定义:
$(MyPreprocessorDefinitions);
然后在* .bat文件中,使用
REM #define MY_DEF
设置MyPreprocessorDefinitions = MY_DEF
devenv.exe ...
REM #undefine MY_DEF
设置MyPreprocessorDefinitions =
答案 3 :(得分:0)
在我的情况下,我需要使用devenv出于其他原因,(并且在cygwin中运行,所以我已经使用了sed)。
我在项目的属性SED_REPLACE_THIS
中设置了编译符号
然后使用sed将其设置为有意义的东西(即:DONT_CRASH_AS_MUCH
)
sed -i 's/SED_REPLACE_THIS/DONT_CRASH_AS_MUCH/g' project.csproj