代码之家  ›  专栏  ›  技术社区  ›  user8128167

无法解析对Windows运行时类型“windows.foundation.metadata.platformattribute”的依赖关系

  •  0
  • user8128167  · 技术社区  · 8 年前

    请注意,我们正在构建一个要在Windows 10上运行的应用程序,但是当我们签入代码时,会收到这些生成错误

    C:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.WinFx.targets(268, 9): error MC1000: Unknown build error, 'Cannot resolve dependency to Windows Runtime type 'Windows.Foundation.Metadata.PlatformAttribute'. When using the ReflectionOnly APIs, dependent Windows Runtime assemblies must be resolved on demand through the ReflectionOnlyNamespaceResolve event.'  
    

    看起来这些东西在 Windows Server 2012 R2 version 6.3 因为这些是我们的构建服务器,但应用程序的目标是 Windows 10 ,因此必须有其他更深层次的COM模块丢失:

    C:\WINDOWS\System32\WinMetadata\Windows.Foundation.winmd 
    C:\WINDOWS\System32\WinMetadata\Windows.Devices.winmd 
    

    有人有什么建议吗?蒂亚

    更新:

    请注意,我花了很多时间研究和解决这个问题。以下是我找到的几个链接,但它们没有产生解决方案:

    Unknown build error Cannot resolve dependency to System.Windows

    https://social.msdn.microsoft.com/Forums/sqlserver/en-US/b6209e45-642f-4542-a66e-f304cf8baaf2/regasm-quotcannot-resolve-dependency-to-windows-runtime-type-for-net-dll?forum=visualstudiogeneral

    Reflecting a WinRT executable from a .Net 4.x App

    https://docs.microsoft.com/en-us/dotnet/framework/reflection-and-codedom/how-to-load-assemblies-into-the-reflection-only-context

    1 回复  |  直到 8 年前
        1
  •  0
  •   user8128167    8 年前

    我们没有深入研究并试图找出COM的不同之处,只是创建了一个Windows10构建服务器。

    更新:

    另一种选择是将构建服务器从Windows 2012升级到2016。