您的位置:首页 > 其它

Windows自动更新的总结

2008-06-28 16:44 459 查看
我在07年7月份的时候曾写过关于使用Windows自动更新API的5篇文章。讲述了如何使用系统API来自己实现自动更新程序。文章发布后,有陆续的朋友问我这方面的问题,我也一一作了解答。

下面将罗列一些常见问题:

很多朋友可能会用vc来开发,这里提供一些资源:

http://www.codeproject.com/KB/install/whotfixcheck2.aspx 可以下载其源代码

1.补丁路径是可以取到的。但可能不是全部的补丁。

2.自动更新的API是基于Windows系统本身的COM组件的。所以一旦系统的COM组件坏掉,可能就会导致API无法使用。

3.我在文章中的代码都基于V6版本的WUA,所以如果版本不是V6的话,可以升级到V6再运行

4.不论自己写的客户端也好,微软的自动更新程序也好,其都调用了该自动更新的dll。都是基于该dll之上的处理。

该dll内部调用时,不论谁调用的,都只有一个进程与之对应。(会调用svchost.exe)。且在该进程中,只有一个实例。所以,只要该dll正在处理时,就不会接受第二个处理。

5.如何实现异步操作(参考本文最后提供的代码,仅限于.net),我在代码中使用了委托来实现。

文章列表:

Windows自动更新API (1)

Windows自动更新API (2)

Windows自动更新API (3)

Windows自动更新API (4)

Windows自动更新API (5)

大家如果对这方面有兴趣,可以从第一篇文章看,并参照代码,相信很好就能理解。

最后我也曾在07年8月做了一个程序,基本涵盖了文章中说提到的内容,支持在局域网内设置了代理服务器、支持异步操作。小程序有点简陋的地方也请大家原谅,仅当是一个Demo即可。代码在XP下可以运行,Vista下没有尝试过。

很高兴能够与大家分享技术,同时,如果大家有相关建议和好的经验,可以留下你宝贵的意见。非常感谢。

代码下载:AutoUpdateApp.rar

Author:AppleSeeker

Date:2008-06-28
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: