두 개의 플랫폼 툴셋이 있습니다 : 내 프로젝트의 경우 v110 및 v110_xp이고 선택한 플랫폼에 따라 컴파일 할 코드의 일부를 포함하거나 제외하려고합니다.Visual Studio : 플랫폼 도구 집합을 전처리 지시문으로 사용하는 방법?
_MSC_FULL_VER
및 $(PlatformToolsetVersion)
은 두 플랫폼 모두에 대해 정확히 동일한 값을 갖습니다.
_MSC_PLATFORM_TOOLSET=$(PlatformToolset)
을하지만 문제는 $(PlatformToolset)
숫자가 아닌 점이다 : 또한, 나는 다음과 같이 $(PlatformToolset)
을 사용하려고했습니다. 이 비 숫자 값을 전 처리기 지시어로 어떻게 사용할 수 있을지 궁금해하십니까?
시도 몇 가지 솔루션은 내가
_MSC_PLATFORM_TOOLSET='$(PlatformToolset)'
다음
#if (_MSC_PLATFORM_TOOLSET=='v110')
[Something]
#endif
잘 작동하지만 것을 생각 에서
#if(_MSC_PLATFORM_TOOLSET == 'v110_xp')
[SomethingElse]
#endif
결과 "문자에 너무 많은 문자 상수" 오류 . 컨텍스트에 대한
이 비슷한 질문 참조하십시오 Visual Studio: how to check used C++ platform toolset programmatically