无法加载 Windows.winmd

本文关键字:winmd Windows 加载 | 更新日期: 2023-09-27 18:32:36

我按照以下示例在Win32应用程序中使用WinRT API。

我添加了对System.RuntimeSystem.Runtime.InteropServices.WindowsRunTime的引用,但是当我添加对Windows.winmd的引用时

我收到以下错误:

错误 1 生成清单时出现问题。无法加载文件或程序集"C:''Program Files (x86)''Windows Kits''8.1''References''CommonConfiguration''Neutral''Windows.winmd"或其依赖项之一。尝试加载格式不正确的程序。

我尝试了使用不同的.NET框架和Visual Studio版本进行的各种配置。我可以尝试什么?

无法加载 Windows.winmd

似乎设置是

<GenerateManifests>true</GenerateManifests>

在项目文件(例如 .csproj)中与 winmd 引用不兼容。

启用"ClickOnce 安全设置

(项目属性 =>安全性 =>启用 ClickOnce 安全设置"复选框)时,将添加此设置。

到目前为止,我

找不到解决具体问题的方法,但我找到了一种解决方法,它适用于我的情况:我刚刚在我的解决方案中创建了一个单独的类库项目,主项目引用了该项目。在类库项目文件中,我添加了该行

<TargetPlatformVersion>8.0</TargetPlatformVersion>

如引用文章中所述。

库项目编译,主项目也可以毫无问题地使用 dll。

在这个堆栈溢出解决方案之后,我解决了一个非常相似的问题,它基本上使你发布排除 winmd。