4

我安装了 Monogame,当尝试运行一个非常简单的 hello world 风格的游戏时,我得到了这个异常。我知道有几篇关于堆栈溢出的帖子关于这个错误,但我仍然对如何解决这个问题感到困惑。我是否需要卸载 .Net 并重新安装其他版本?如果是这样,我该怎么做?

引发了 System.IO.FileNotFoundException。无法加载文件或程序集“System.Drawing,Version=4.0.0.0,Culture=neutral,PublicKeyToken=b03f5f7f11d50a3a”或其依赖项之一。

这是 Xamarin 项目的可下载链接:

https://www.dropbox.com/s/q7quw26lg1etdts/MonoGameTester.zip

4

2 回答 2

5

如果您引用了 Xamarin.iOS未附带的程序集,则会出现此类错误。情况就是这样System.Drawing.dll

在您的情况下,这很可能是因为您的项目同时引用了这两者monotouch.dllMonoMac.dll并且这不起作用。

您需要为每个目标构建单独的项目,即一个用于 iOS (monotouch.dll) 和一个用于 OSX (MonoMac.dll)。

您可以从每个项目共享源代码和/或程序集(用于共享逻辑)。这两个项目还需要包含特定于平台的代码和参考。

您最终会得到大量共享代码(在源代码或程序集中)以及一些特定于平台的代码。

于 2013-08-09T17:25:29.263 回答
0

我遇到了同样的问题,上面的建议对我没有用,所以我做了以下事情:

打开您的项目
转到解决方案资源管理器
展开参考组
删除 System.Drawing 参考
右键单击​​参考组
添加参考
在“.NET”选项卡上,搜索 System.Drawing 以添加正确的参考

于 2014-10-20T07:30:38.677 回答