(旧文重贴)SmartClient在客户端安装的问题
1、背景:客户端是WinForm Control,嵌入到IE中。方式有两种,采用assembly#namespace.classname,以及采用clsid:GUID#-1,-1,-1,-1方式。前者,control需要从server上down下来安装到本地cache中,后者,需要手工安装,并且注册到GAC中,具体方式我就不细说了,可以参考msdn的文档。手工安装,我做了一个AutoUpdate,类似于WindowsUpdate和一些病毒防火墙软件。
2、目的:就是为了加快客户端的相应时间。据我观察,从server上download和csc这是最废时间的过程。我的AutoUpdate就是为了解决这个问题的。
3、问题:
a)、在安装之前,server端的所有control都已经被ngen了,那么我autoupdate到客户端后,为什么每次还需要csc?而且,时间还比较长。我怎么知道目前csc的是哪个assembly?
b)、我的AutoUpdate,如果Show出来(平时是hide在IconTray里面的),那么download control的时候,速度非常慢。难道,是UI在repaint的问题?如果我hide in IconTray,速度奇快。这个问题类似于C#的IDE一样,如果minimized,内存占用迅速减少到了10M左右,而如果show normal,那么有6、7十M,使很正常的。
现在仔细整理一下这个问题,发给ms,如果解决了,那么运行速度应该和asp.net方式是类似的。
2004年1月11日 10:10