最近我被分配将一个大型的C++代码库移植到XNA,具体来说是.Net v4客户端框架。我的希望是使用C++/CLI而不是将所有代码翻译成C#,但在可行性测试中,看起来你不能从XNA引用非XNA项目,并且没有办法创建一个C++/CLI XNA项目。
我已经设置了C++/CLI项目以针对客户端框架,但它仍然显示间接依赖于mscorlib(可能是非客户端版本,否则就不会出错)。我还尝试告诉它省略默认库,但没有效果。
这是使用Visual Studio 2010 Professional、XNA Game Studio 4在Windows 7 64位上运行时出现的错误。以防万一。
以下是错误信息:
主要参考“c:\...\WindowsPhoneGame2\Debug\cpptest.dll”无法解析,因为它具有对框架程序集“mscorlib,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b77a5c561934e089”的间接依赖项,该程序集无法在当前目标框架中解决。“.NETFramework,Version = v4.0,Profile = Client”。要解决此问题,请删除参考“c:\...\WindowsPhoneGame2\Debug\cpptest.dll”,或将应用程序重新定向到包含“mscorlib,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b77a5c561934e089”的框架版本。
总之,问题是:我可以从XNA项目中使用C++/CLI程序集吗?如何使用?
我已经设置了C++/CLI项目以针对客户端框架,但它仍然显示间接依赖于mscorlib(可能是非客户端版本,否则就不会出错)。我还尝试告诉它省略默认库,但没有效果。
这是使用Visual Studio 2010 Professional、XNA Game Studio 4在Windows 7 64位上运行时出现的错误。以防万一。
以下是错误信息:
主要参考“c:\...\WindowsPhoneGame2\Debug\cpptest.dll”无法解析,因为它具有对框架程序集“mscorlib,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b77a5c561934e089”的间接依赖项,该程序集无法在当前目标框架中解决。“.NETFramework,Version = v4.0,Profile = Client”。要解决此问题,请删除参考“c:\...\WindowsPhoneGame2\Debug\cpptest.dll”,或将应用程序重新定向到包含“mscorlib,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b77a5c561934e089”的框架版本。
总之,问题是:我可以从XNA项目中使用C++/CLI程序集吗?如何使用?