我有一个 C++ 程序,我为其创建了清单文件并将长路径感知设置为 true。在较新版本的 Windows 上,它可以按预期工作。
但是,如果我在不支持长路径感知的旧版本 Windows 上启动我的应用程序,会发生什么。它将启动并按预期工作,就像没有长路径一样,或者根本不会启动,或者在使用受影响的 api 时启动并抛出异常?
有什么我应该注意的问题吗?
我的程序对于文件系统 api 不使用大于 260 的常量,并且不假设长路径感知应该是正确的。我的程序只是使用 recursive_directory_iterator 迭代文件。
我尝试搜索 win api 文档,但找不到任何有关此的信息。
作为一般规则,系统会忽略未知的清单条目。这 程序在旧版本上运行,并且表现得好像没有长版本一样 路径意识清单条目。
也可以通过dpiAwareness的文档来推断。
支持的操作系统的最低版本 dpiAwareness 元素是 Windows 10 版本 1607。对于以下版本 支持 dpiAwareness 元素,dpiAwareness 覆盖 dpiAware 元素。 您可以将这两个元素包含在清单中,如果您 想要为 Windows 10 版本 1607 指定不同的行为 对于早期版本的操作系统。