| | | | | | | [文章信息] | | | 作者: | 陶刚编译 | | 时间: | 2003-08-19 | | 出处: | yesky | | 责任编辑: | 方舟 | |
| [文章导读] | | | .NET框架组件为在代码中使用介绍很多有趣的安全结构,代码访问安全性就是一个例子 | |
| |
|
| | | |
|
|
|
|
|
AutoUpdateApp.exe示例应用程序
本文的代码示例不仅包括自动升级逻辑,还建立了应用程序的两个升级版本,这样你可以看到的整个操作方案。
尽管Visual Studio .NET是一个强大的编程环境,但是也有一些时候你仅仅需要创建批处理建立(build)。我的项目就是一个例子,一个多版本构造,它很难作为Visual Studio项目生成。因此在发布时例子是一系列资源文件和一个用于从命令行执行建立的批处理文件。
为了测试该应用程序,请下载本文应用程序文件和代码(http://download.microsoft.com/download/9/4/c/94cd450c-e7ae-46a3-ad1e-d19f2b80fa0c/bits.exe),并将它们解压到一个空目录。接着从命令行运行Build.bat。为了该批处理文件运行成功,要求csc.exe(C#命令行编译器)和sn.exe(强化名称工具)都在环境变量的路径中。你会发现.NET框架组件中的csc.exe安装在C:\Windows\Microsoft.Net\Framework\目录中,.NET框架组件的sn.exe一般安装在C:\Program Files\Microsoft.NET或者C:\Program Files\Microsoft Visual Studio .NET位置。
一旦该项目已经使用Build.bat建立了,就创建了两个重要的目录:app和updates。注意会出现一个sln文件,这样你才能使用Visual Studio .NET简单地编辑代码文件(但是你需要接着使用Build.bat建立该项目)。第一个目录(app)包含应用程序安装。将当前目录转到app目录并运行AutoUpdateApp.exe来作测试。该应用程序的实际功能是显示它在载入目录找到地第一个位图(见图2)。
 图2.自动更新的简单应用程序
为了查看更新功能,建立一个叫updates的IIS虚拟根目录并赋予匿名下载访问权限。它的目的是http://localhost/updates作为一个发布所有更新的工作位置。接着将第二个目录(updates)的内容复制到该虚拟目录。
假定所有都设置正确,你的应用程序将能够在http://localhost/updates上找到Update1.dll 和Update2.dll。从命令行执行和关闭AutoUpdateApp.exe几次,大约在第二次和第三次载入时,应用程序将提示第一个更新可用了。第一个更新仅仅向目录中添加了新的GIF文件。第二个更新实际上安装了AutoUpdateApp.exe的新副本,它现在有了运行幻灯显示载入目录中的所有GIF文件的特性。 你第一次载入AutoUpdateApp.exe时应用程序建立一个叫UpdateState.xml的数据文件。该文件包含了控制AutoUpdateApp.exe功能的信息,包括应用程序查找更新的网络位置。如果你不想使用http://localhost/上的位置,你能改变UpdateState.xml中的URL来指定不同的更新服务器。
自动更新应用程序的未来
目前有许多编写自动更新应用程序的特性可以使用。也就是说,微软开发人员目前在努力工作使自动更新更加简单并成为应用程序开发的自然部分。.NET框架组件的1.0版本目前已经提供了一些基本的功能。最终,你编写的应用程序越易于安装和更新,应用程序就越成功。
在Windows的未来版本中将有介绍更新发现和替换的内建(built-in)服务的计划。BITS服务将继续成为下层下载机制,但附加的API将简化下载和安全性。作为补充,BITS将扩展成包括管理应用程序更新的易于使用的用户界面。
|
|
|
|
|
|
|
|