Opengl小程序 VS2019 fatal error C1107: 未能找到程序集“platform.winmd”: 请使用 /AI 或通过设置 ...

错误 "fatal error C1107: 未能找到程序集“platform.winmd”" 是因为在使用 OpenGL 小程序时,编译器无法找到所需的 Windows 运行时组件文件 "platform.winmd"。这个文件通常是用于 UWP (Universal Windows Platform) 应用程序开发的,而不是传统的 OpenGL 应用程序所需的组件。

解决方法:

  1. 检查项目设置

    • 确保你的项目设置不包含不必要的 UWP 或 Windows Store 应用程序选项。对于 OpenGL 程序,应使用传统的桌面应用程序配置。
  2. 更新项目属性

    • 在 Visual Studio 中,打开项目属性。检查项目的目标平台和配置,确保它们正确设置为桌面应用程序。
  3. 查找依赖项

    • 确保 OpenGL 相关的依赖项和库正确添加并链接到项目中。这些通常包括 OpenGL 的库文件和头文件。
  4. 编译器选项

    • 如果项目中确实需要某些 Windows 运行时组件,可以尝试添加 /AI 选项来指定额外的包含目录,以帮助编译器找到所需的组件。例如,可以使用 /AI "C:\path\to\winmd" 来指定目录。
  5. 检查 Visual Studio 版本和配置

    • 确保你使用的 Visual Studio 版本和配置适合于 OpenGL 开发。有时候更新或更改配置可以解决一些编译器无法找到文件的问题。

示例:

如果你的项目是一个简单的 OpenGL 程序,确保项目属性中没有配置错误,特别是与 Windows Store 应用程序相关的设置。正确设置项目的目标平台和配置,确保它们适合于传统的桌面应用程序开发。

通过这些步骤,应该能够解决 "fatal error C1107: 未能找到程序集“platform.winmd”" 错误,使得你能够成功编译和运行你的 OpenGL 小程序。