如何在uwp中为特定sdk定义条件编译器符号

2024-03-07

我正在 Visual Studio 2015 中编写一个 UWP 应用程序。最小 sdk 是 10240。最大是 14393。我想编写 sdk 特定代码,所以我想定义一个条件编译符号。我可以简单地在构建选项卡下的项目属性窗口中定义它。但是我可以在哪里定义条件呢?

我想要存档的就是这个。我在构建选项卡“SDK_14393”中定义了一个符号。然后我有一些类似这样的代码,我只想在 14393 sdk 中执行,

#if SDK_14393
  //some code here
#endif

但即使我在不​​同的 SDK 中,它也会一直执行。所以我的问题是如何正确存档?


#ifdef不是构建自适应代码的正确工具,因为您需要发布应用程序的两个版本。而且操作系统版本号/SDK 版本并不是一个很好的鉴别器。

如果您要调用 WinRT API,请使用ApiInformation https://msdn.microsoft.com/en-us/library/windows/apps/windows.foundation.metadata.apiinformation.aspx键入以查看您想要的功能在运行时是否可用。如果您调用 Win32,则使用delayload 和QueryOptionalDelayLoadedAPI https://msdn.microsoft.com/en-us/library/windows/desktop/mt403328(v=vs.85).aspx功能。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在uwp中为特定sdk定义条件编译器符号 的相关文章

随机推荐