3、 Updater Application Block:这个模块主要负责的是程序的自动更新问题。在胖客户端的模式下,对程序的部署以及更新是一件非常麻烦的事情,尤其是当有成百上千个客户端的时候,我们不得不一个一个的处理,这样就会浪费我们很多的时间和精力,而且还非常容易出错。Updater Application Block为我们提供了一个很好的解决方案,每次客户端启动的时候,程序都会对需要更新的文件的版本进行检查,如果服务端的版本大于当前客户端的版本的时候,就会提示用户是否要对程序进行更新,如果确认的话,就会自动从服务端获得最新的客户端程序。4、 Configure Application Block:在上面自动更新的Application Block里面,大家一定会对程序如何判断当前客户端文件的版本以及要对哪些文件进行更新提出疑问,这个时候,我们就用到了Configure Application Block,这个模块为我们提供了一系列的对XML文件的处理,这些XML文件的格式已经有了一些基本的定义,在其中我们可以设置我们的配置信息,这样,我们就可以通过这些文件来获取当前客户端的一些信息了。5、 Caching Application Block:在这个Application Block里面,微软为我们封装了他们推荐的缓存机制。由于我们现在使用智能客户端开发的是分布式的程序,所以缓存数据对程序来说就显得非常重要。缓存机制主要有两种,一种是短期数据缓存,也就是要把数据存放在内存中;另外一种是长期数据缓存,多数是要讲数据存放在我们的硬盘当中。对于这两种机制如何缓存,我们在程序编写的过程中需要考虑很多,因为如果存放在内存中的话,速度快,但是容易丢失,而存放在硬盘中的数据虽然不容易丢失,却有速度缓慢的问题,如何在两者之间权衡,是一个比较困难的问题。这个问题在这个Application Block里面,微软基本提出了解决的一些原则。6、 Logging Application Block :在我们的程序中,为了避免非法的用户进行操作,或者记录用户都进行了哪些操作,我们必须要对程序所进行的操作进行记录,记下来的记录一般要存放到一个文件当中,这个文件一般就被称为日志。在智能客户端里面,很多的操作像更新文件、版本检查等等操作都会自动生成一个非常详细的日志文件。这个日志文件是XML格式的,也就是说,我们可以非常方便的对其进行读写,分析,而且还能够方便的将其导入到数据库之中。7、 Security Application Block:由于智能客户端想要实现的异地的协同办公,所以不可避免的就会涉及到网络上的数据传输。对于此,用户们一般担心的就是安全问题,一旦一些敏感数据或者需要保密的数据在网上丢失的话,其后果是不堪设想的。为了解决这个问题,微软在Security Application Block里面为我们提供了多种安全方面对的解决方案,包括如何对用户进行授权,如何对文件进行加密,如何对用户的合法性进行验证等等。这个在智能客户端里面的应用也是非常多的,例如在我们想要进行自动更新的时候,首先服务端会通过一个密钥来验证客户端的合法性,只有通过了验证的客户端才能够正确下载到更新文件。8、 Exception Management Application Block:在程序的实际运行过程中,不可避免的会出现许多意想不到的情况,也就是我们所说的异常。而一个程序对异常的处理也是用户友好性的一个主要的标准。这个Application Block为我们提供了多种选择方案,当异常出现的时候,可能会通过定义好的方式来处理,或者写入日志文件,终止流程;还可能将处理交给用户来进行手动的选择。通过这样,我们可以灵活的对异常进行相应的处理,使得程序功能能够得到更好的实现。总之,以上的各个Application Block是相互联系、相互依赖的,形成了一个整体,正是这样,才能够形成了一个智能客户端的系统。相信在不久的将来,这个系统将会给我们带来一种全新的体验的。