c++ - 识别 WinRT 的宏?

标签 c++ windows-8 windows-runtime

是否有一个新的宏来确定应用程序是否在 WinRT 上运行?当我使用 LoadLibrary 时,如果有一个宏可以将对 LoadLibrary 的所有调用替换为对 LoadPackagedLibrary 的所有调用,那就太好了。 .

我对文档的理解是正确的,因为我可以通过 LoadPackagedLibrary 加载任何 DLL(只要它在我的包中),对吧?! (只要该 DLL 不使用列入黑名单的 API...)

最佳答案

我最近更新到 Visual Studio 2012,我想我找到了问题的答案:

在 Microsoft header 中,宏 WINAPI_FAMILY_PARTITION 用于确定 WinAPI 的“级别”。目前有 WINAPI_PARTITION_DESKTOPWINAPI_PARTITION_APP,因此我“猜测”通过这个宏可以区分 Desktop 和 Metro...

这两个宏导致另一组宏:#define WINAPI_FAMILY_APP WINAPI_PARTITION_APP#define WINAPI_FAMILY_DESKTOP_APP (WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_APP)。因此,如果定义了 WINAPI_FAMILY_APP,那么应该能够假设它是一个 Metro 应用程序......

关于c++ - 识别 WinRT 的宏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11961771/

相关文章:

c# - Metro 应用程序有条件地禁用 AppBar RightTapped 事件

c++ - 资源管理器获取图像的缩略图非常快,它是如何工作的?

c++ - 如何使用 C++ 使用 OpenCV 删除图像中不需要的部分?

windows-8 - Windows 应用商店应用程序 (Metro) 在什么情况下无法在 ARM 上运行?

c# - 如何在 EditText 软键盘上隐藏 Windows 8 Metro 应用程序?

windows-runtime - 如何在 WinRT 中设置应用程序启动屏幕背景颜色

c# - 通过 FilePicker 访问时 StorageFolder.GetFolderFromPathAsync 出现 UnAuthorizedAccessException

c++ - 静态断言捕获的 lambda

c++ - 从纯虚拟(接口(interface))类虚拟继承是一个很好的约定吗?

xaml - Windows 8 Metro : Implementing Validation