我们有一个非常老的Windows程序,它是用c#开发的,每个新发布的客户都需要重新安装程序的新版本。我想知道如果可能的话。
这可能吗?
答案 0 :(得分:2)
为什么txt文件,你的意思是源代码形式? Assembly.Load()不是编译器。
这不是Java。您不能将类编译为* .class文件(二进制文件)。 C#类的聚合被编译成dll(二进制文件)。 Assembly.Load()只加载.NET dll。
因此无法直接将Assembly.Load()与文本文件一起使用。
答案 1 :(得分:0)
不需要整个卸载重新安装过程。如果要更新应用程序的版本,只需将更新的EXE和DLL文件转储到目录中并直接运行即可。
将应用程序拆分为多个DLL可能很诱人,每个DLL都负责一个特定的表单或组件,但在大多数情况下,最好一次更新整个应用程序,以防止出现兼容性问题。
如果您真的想要无缝更新,请考虑使用ClickOnce部署或某些自动更新过程,例如(现已过时)Updater Application Block.