• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
Tony Qu
我的软件工作室
博客园    首页    新随笔    联系   管理     

Microsoft Updater Application Block 1.5.3 服务器端manifest文件设计 [翻译]

Microsoft Updater Application Block 服务器端manifest文件设计

译者:Tony Qu

Manfest文件用于列出一次升级所需要的所有的文件,它与验证签名相关联,验证签名可用于验证manifest文件的真实性。这个将介绍应用程序升级器的以下几个方面:
问题描述
设计目标、权衡和问题
解决方案描述
具体实现


问题描述
对于每次升级,应用程序升级器必须能够:
1. 识别可用版本,决定是否要升级
2. 定位升级文件
3. 验证升级信息和文件的真实性
4. 如果指定了一个后处理器,要定位后处理器[Post Processor]

设计目标、权衡和问题
Updater Application Block的开发人员识别出以下一些与manifest文件相关的设计目标、权衡和问题
1. 文件必须是xml格式
2. 文件应该为每一个升级文件包含验证签名
3. 文件应该包含一个manifest自己的签名
4. 文件应该允许管理员指定在升级完成后运行的后处理器

解决方案描述
manifest文件模式包含以下一些元素:
1. availableVersion —— 可供下载的应用程序版本
2. updateLocation —— 升级文件的网络位置
3. files —— 每一个升级文件都有一个<file>元素
4. postProcessor —— 这是一个可选的元素,指定类型、集合、在升级完成后运行的后处理器的文件位置。
另外,<ServerApplicationInfo>根元素和每一个<file>元素都有一个signature属性,该属性用于指定一个验证签名

具体实现
<ServerApplicationInfo signature="16d~#d9&9">

  
<availableVersion>2.0.0.0</availableVersion>
<updateLocation>http://appserver/appupdates/2.0.0.0</updateLocation>
  
<files>
    
<file name="post\Microsoft.ApplicationBlocks.ApplicationUpdater.Interfaces.dll"  signature="25kdsj*7" />
    
<file name="post\MyPostProcessor.dll" signature="25sd][{*h" />
    
<file name="data\App1Data.mdb" signature="6ydh8i]+8#"
    <file name
="App1.exe" signature="25+)8j&h" />
    
<file name="App1.exe.config" signature="19huio%g" />
  
</files>
  
<postProcessor type="MyPostProcessor.MyAppProcessor" assembly="MyPostProcessor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" name="post\MyPostProcessor.dll" />
</ServerApplicationInfo>

版权声明:本文由作者Tony Qu原创, 未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则视为侵权。
posted @ 2005-03-11 11:13  找事的狐狸  阅读(1595)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3