【发布时间】:2011-05-05 18:11:35
【问题描述】:
我的一个项目使用了 LuaInterface。我已经开始将它从 XNA 迁移到 OpenTX,并在 .Net 4.0 下重写。
我开始移动我的 Lua 类,发现调试时出现异常 (FileLoadException)
Mixed mode assembly is built against version 'v2.0.50727' of the runtime and cannot be loaded in the 4.0 runtime without additional configuration information.
当我重建 LuaInterface 时,我将 .Net Framework 的属性从 .Net 2.0 更改为 .Net 4.0(以及它的客户端模式)和 .Net 3.5。
这两个设置都给我一个错误,说明它仍然使用 2.0 构建。
我在 StackOverflow 和 MSDN 上尝试了许多解决方案,声明设置 app.config 甚至更改应用程序池出于某些不敬虔的原因...
无论如何,我尝试的每个解决方案都失败了,说明它仍然使用 2.0。
我使用了“IL DASM”,它声明它是使用 3.5/4.0 构建的。
关于发生了什么的任何想法?整天都在搞这个。我只是天真地认为更改单个设置就可以解决我的问题吗?
任何帮助将不胜感激。
【问题讨论】:
-
如果有人正在寻找一种方法来复制问题,只需编写一个类来实例化 LuaInterface 中的 Lua 类。发生这种情况时会引发异常。
-
之前看过Lua511源码。它的行为很奇怪,有时我无需任何更改就能成功构建它,有时会出现一些“无法将
转换为 ”的异常。不过,我看不出这会有什么影响,看看原始错误是如何由 LuaInterface 库引起的。我会玩它,看看会发生什么......
标签: c# .net-4.0 lua luainterface