在运行时编译多次相同的.dll

时间:2013-03-13 15:50:00

标签: c# serialization compiler-construction

我正在开发一个简单的2D游戏编辑器,我希望能够从.cs文件中读取,编译然后将其附加到运行时的对象(如Unity3D)并能够编辑其属性。

我现在正在将它们编译成.dll文件,问题是当我再次尝试重新编译它时,因为原始的.cs文件也可以在运行时更新(它说文件已被使用,因为.dll已加载到我认为的程序集中

还有其他办法吗?

流量:

1 - 用户制作/编辑脚本(.cs文件)
2 - 用户调用编译脚本的功能
3 - 程序编译所有.cs文件并更新.DLL文件。

感谢。

1 个答案:

答案 0 :(得分:0)

不是将DLL链接到项目,而是在调用任何函数之前(以及在执行任何重新编译之后)使用LoadLibrary()或LoadLibraryEx()加载它,然后在执行之前调用FreeLibrary()你的重新编译。