我用XNA 4.0创建了一个名为“NivekGameEngine”的简单XNA Windows类库。我已经为Windows平台创建了一个简单的游戏,我可以很好地访问我的dll的所有内容。
当我尝试为Xbox 360制作此项目的副本时出现问题。我将此作为错误:
The primary reference "NivekGameEngine01" could not be resolved because it has an
indirect dependency on the framework assembly "mscorlib, Version=4.0.0.0,
Culture=neutral, PublicKeyToken=b77a5c561934e089" which could not be resolved in the
currently targeted framework. ".NETFramework,Version=v4.0,Profile=Client". To resolve
this problem, either remove the reference "NivekGameEngine01" or retarget your
application to a framework version which contains "mscorlib, Version=4.0.0.0,
Culture=neutral, PublicKeyToken=b77a5c561934e089".
我回顾一下创建我的dll文件的项目,目标设置为“4.0 Client”
有没有办法解决这个问题?如有必要,我会上传代码。
答案 0 :(得分:1)
我认为问题在于您需要针对XBox 360开发定位.Net Compact Framework或Silverlight(不是100%确定哪个)。完整的.Net框架(包括客户端配置文件版本)似乎不受支持。
因此,您需要为其中一个环境重建DLL,或者,如果在其他应用程序中使用它,则为适当的平台创建第二个项目,并添加对原始项目中文件的引用。如果使用平台不支持的功能或方法重载,您可能会发现需要向源代码添加条件编译语句。
这一切都非常可行:我们有一套服务于完整框架,Compact Framework,Silverlight和Mono的源代码。