我打算使用vista之后可用的媒体基础API编写一段代码。我想在#if块中添加代码,如...
#if <SomeMacro>
// all the classes using MediaFoundation go here.
#endif
我找不到用于检测操作系统版本的宏。这通常是如何在Windows上完成的?我发现_WIN32和_WIN64检测32位和64位但没有宏来确定api可用性。是否有更好的方法可以根据vc中的API可用性来隔离代码。?
谢谢, 阿希奈。
答案 0 :(得分:2)
答案 1 :(得分:2)
不是真的。您可以做的最好的事情是关闭WIN32_WINNT宏,但如果有人转身并尝试在XP上运行您的应用程序,这对您没有帮助。
答案 2 :(得分:1)
尝试使用_WIN32_WINNT
和WINVER
宏。更多信息:http://msdn.microsoft.com/en-us/library/aa383745%28VS.85%29.aspx
尝试类似的事情,
#ifdef _WIN32_WINNT_VISTA
#if WINVER >= _WIN32_WINNT_VISTA
//....
#endif
#endif