Unity3d 命名空间媒体不存在

Unity3d 命名空间媒体不存在,unity3d,Unity3d,我正在使用Windows 8上的Visual Studio 2015 C#在Unity 4.7.1f1中开发。我正在尝试使用。该类以以下行开始: 使用System.Windows.Media 使用System.Windows.Media.Imaging 这将产生以下错误: 命名空间“Windows”中不存在类型或命名空间名称“Media”(是否缺少程序集引用?) 对于类型PixelFormat、writeablebitmap和Int32Rect,我需要这个 我的阅读,包括通过Unity Answ

我正在使用Windows 8上的Visual Studio 2015 C#在Unity 4.7.1f1中开发。我正在尝试使用。该类以以下行开始:

使用System.Windows.Media

使用System.Windows.Media.Imaging

这将产生以下错误:

命名空间“Windows”中不存在类型或命名空间名称“Media”(是否缺少程序集引用?)

对于类型
PixelFormat
writeablebitmap
Int32Rect
,我需要这个

我的阅读,包括通过Unity Answers和Stack Overflow进行的搜索,表明了以下几点:

  • 在Visual Studio中添加程序集将无法使其正确编译。Unity需要在Unity/Mono中添加它
  • Windows的此组件位于PresentationCore.dll中,您可以将其复制到项目中
我尝试了以下解决方案:

  • 我将PresentationCore.dll文件从
    Program Files\Reference Assembly\Microsoft\Framework.NetFramework\v4.0\Profile
    复制到
    Assets
    文件夹,方法是将其拖动到“Project”窗格的Assets文件夹中

  • 我将PresentationCore.dll文件从
    \Windows\WinSxS
    的子文件夹复制到
    资产
    文件夹,方法是将其拖动到“项目”窗格的资产文件夹

  • 我检查了我是为.NET2.0构建的,而不是一个子集


所有这些都没有消除错误。在进行更改时,我会重新启动Unity并在Visual Studio中加载文件。如何让Mono使用accept引用它?我错过了一些非常简单的东西吗?将DLL复制到资产文件夹后的步骤?

PresentationCore需要.net3.5或更高版本iirc。不过,unity本身也有类似的内置功能。您可能需要查看本机函数。AFAIK Unity使用.NET 3.5,不支持更高版本。它根本无法编译您复制的dll。顺便说一句,您必须将dll文件复制到Assets/plugin谢谢。我现在试着从3.5文件夹中复制并将其放入插件中。错误仍然会被报告。