2013-08-22 62 views
-3

我想编译一个游戏的dll,游戏运行在DLL上,我已经提取了我的DLL。添加了代码,然后我计划重新编译它。除了一个小问题,由于游戏严重依赖于Unity引擎,所以不可能将游戏编译回来,因为Visual Studio给我带来了它无法调用的15000个错误。完全忽略Visual Studio错误并强制编译

反正有这个吗?

+5

是的,看看错误是想告诉你什么,然后修复错误。这些不是“Visual Studio错误” - 它们是编译器错误,并且编译器在发生错误时不能生成二进制文件。 –

+1

您可以通过警告进行编译。如果你有错误,你的代码无法编译,因为它不是有效的C#,编译器只知道如何将有效的C#转换为IL。 – evanmcdonnal

回答

4

平原和简单,你不能。编译器错误不能被忽略,它们发生的原因是编译器发现某些东西完全阻碍了进一步处理和二进制文件的正确生成。使编译成为可能的唯一方法是修复所有语法错误,数据类型不匹配等,并提供适当的编译时间依赖关系,以便可以链接到任何需要的东西。

现在你的具体情况。你说这个游戏取决于Unity。为了编译,Unity需要100%的周期,否则你必须删除它并相应地重写代码以消除依赖(如果你不熟悉代码和库,这可能是一项艰巨的任务)。但是,我问,游戏在运行之前是否运行了这个DLL?如果是这样,所需的二进制文件应该已经安装在您的系统上。程序文件夹最有可能包含依赖关系,并且您可以将项目引用指向这些依赖项,或者(最好)将它们复制到项目源并使用它们进行编译。

您也可以直接搜索并下载库,这样就可以满足任何编译时的要求。这几乎是大多数人开发第三方代码的标准方式。