注:打包.NET Framework,与程序一起安装的方法我也懂。
我在这里的意思是:把.NET Framework打包成一个虚拟机,然后程序运行的时候可以调用它,这样整个程序集可以运行在没有安装.NET Framework的电脑里。
现在已经可以做到了,只是不知道怎么做!飞信2008就是这样做的,在飞信的安装目录里面有一个文件夹专门放.NET运行环境的!
请问我们怎么样做才能够和飞信2008一样把这个“虚拟环境”跟我们的程序捆绑起来部署?
PS:不要跟我说利用飞信的虚拟机来运行我们的程序。我要的是像飞信一样做一个如此的虚拟机!
之所以需要安装.NET Framework运行时,是因为我们的程序依赖于它所提供的类库,所以我们就可以考虑怎样为我们的程序提供所需要的类库。
如果你的程序需要某些类库,那么你就可以把这些类库对应的dll文件单独Copy到项目下的一个目录【比如Library】中,这时候,在我们的程序中添加引用,通过浏览找到我们存放那些包含我们所需类库的dll文件,通过这样的引用,我们的程序就不要安装.net Framework运行时,实际上,我们程序并没有脱离运行时,只是我们已经把我们需要的类库单独放到了我们的程序中,这时候,制作安装文件时,也会包含这些dll文件,我们就不需要让用户单独安装整个.NET Framework运行时了。
不知道这些对您有没有帮助。
PS:关于飞信的“虚拟机”,我没有研究过,我感觉他的实现原理和上面的说的类似,另外它还用来自动更新这些dll文件的版本,比如,飞信发布一个更新包,最新的程序采用了新的.NET Framework版本,那么你运行更新包后,更新程序的同时,也会自动使用最新版本的类库dll文件替换原来老版本的dll文件。