【发布时间】:2016-08-17 16:05:03
【问题描述】:
环境:
Visual Studio 2015/Visual C++
操作系统:Windows 10 TH2 10586 / 对应的 Windows SDK
由于 GetVersionEx 在 Windows 8 及更高版本中已弃用,我想使用版本帮助程序 API (IsWindows10OrGreater) 来检测我的 DLL 中的操作系统来决定流程。但是,根据 MSDN 文档,我需要有一个清单(包含支持的操作系统版本的兼容性部分),没有它,即使在 Windows 10 中运行,此 API (IsWindows10OrGreater) 也会返回 false。
我已经添加了一个包含所需兼容性部分的清单,但我仍然无法让它工作。它总是返回假。 (我在 resource.h 中将清单 ID 定义为 2,因为它是 DLL)
为了进行交叉检查,我实现了一个具有相同清单的示例独立应用程序,该应用程序非常适合此版本帮助程序 API。
我需要您的帮助来了解我在 DLL 中缺少什么?不幸的是,网上的讨论都没有讨论 DLL 清单的兼容性。
谢谢,
【问题讨论】:
标签: windows dll manifest compatibility