前几天用ghost还原了系统,发现Adobe Community Help有部分帮助文档还没下载,于是开始下载。但是有一个文档Actionscript3.0 for Reference for Flex4 老是无法更新,进度条一直不前进。
想了想,好像ghost备份前这个文档正在下载中,当时赶时间就先备份了,但是后来我应该是有继续完成下载的。我的flash builder 4 安装在D盘应该不会受到影响。打开D盘,我却找不到Adobe Community Help的目录。
百度了下http://blog.clzg.cn/space.php?uid=39357&do=blog&id=29220 这里告诉我们Adobe Community Help是装在系统盘的。在xp下所有的本地内容安装在C:\Documents and Settings\当前用户\Application Data\chc.4875E02D9FB21EE389F73B8D1702B320485DF8CE.1中。我的系统是win7,对应的目录是C:\Users\当前用户\AppData\Roaming\chc.4875E02D9FB21EE389F73B8D1702B320485DF8CE.1。
研究了下目录结构,发现\Local Store\HelpCfg\zh_CN\Flex_4.0.helpcfg这个文件里存放的是下载地址,其中关键的一部分是:
<product id="zh_CN_Flex_4.0" label="Flex 4" baseUrl="http://help.adobe.com/" path="HelpCfg/zh_CN/" ionId="flex_product_adobelr" ionCommentingAllowed="yes" ionSiteArea="help" ionRatingAllowed="yes" ionRatingType="thumbs" searchOptions="Community|Adobe|Blueprint" searchDefault="Community" multidomain="yes" searchAdobeRefinement="site=flex_4_all" />
<package id="zh_CN_Flex_4.0_AS3LCR" alias="zh_CN/FlashPlatform/reference/actionscript/3" deprecated="yes" label="ActionScript 3.0 Reference for Flex 4" path="zh_CN/AS3LCR/Flex_4.0" contextSensitivity="yes" downloadContent="Flex_4.0_zh-cn.zip" downloadContentDefault="no" />
用其中的baseUrl="http://help.adobe.com/"和path="zh_CN/AS3LCR/Flex_4.0"以及downloadContent="Flex_4.0_zh-cn.zip"
拼凑出下载地址:http://help.adobe.com/zh_CN/AS3LCR/Flex_4.0/Flex_4.0_zh-cn.zip
用迅雷下载好zip文件,丢到\Local Store\downloads目录,再次打开Adobe Community Help,发现还是提示该文档未更新,点击更新又开始下载,一看\Local Store\downloads目录原来的flex_4.0_zh-cn.zip又给替换成一个大小为0的空文件,重新开始下载了。
还是不甘心,于是将该zip解压完放到\Local Store\Help\zh_CN\AS3LCR/Flex_4.0,打开Adobe Community Help还是要提示更新。。。
应该是某个文件里面写了改文档时候更新过了,而且很可能是个xml配置文件,但是仔细检查了下目录,没有找到其他配置文件有相关属性了,但是\Local Store\下有个appDB.db文件,估计是存到数据库里了。
下载了一个SQLiteSpy(见附件)用来打开该db文件(记得先关掉Adobe Community Help然后将db文件备份下再操作)。
研究了下表结构,对更新有用的主要是downloads表和integration表。downloads表记录已经下载的文档信息,integration表记录待集成的文档信息,即integration是一张临时表。
integration表的结构如下:
于是输入
insert into integration values('zh_CN_Flex_4.0','zh_CN_Flex_4.0_AS3LCR','C:\Users\lihui\AppData\Roaming\chc.4875E02D9FB21EE389F73B8D1702B320485DF8CE.1\Local Store\downloads\Flex_4.0_zh-cn.zip','zh_CN/AS3LCR/Flex_4.0','');
sql语句的值都来源于上面的xml配置文件,最后一个字段lastModified估计是用来判断更新版本的,留空也可以。执行sql语句。
再打开Adobe Community Help,嘿嘿刚才下载失败的文档的状态已经变成等待集成了!
等待一段解压时间,就ok了!
打开db文件,downloads表多了一条记录,同时integration表又变空了,可见集成完毕后又清空这张临时表了。不过我不理解,这里完全不需要存在数据库里的。。。
赶紧把整个目录备份一遍。
提醒以下更新不是必须也是不必要的!!!!
更新完文档,又提示Adobe Community Help有新的3.5版本,于是更新。但是再次报错:
干脆直接去官网下载了
在页面右边选择Flash Builder然后点击INSTALL NOW即可。
但是奇怪的是3.5版本不本地显示最关键的帮助文档了!!!
虽然在控制面板可以卸载3.5版本,但是3.0也找不到单独下载了。。。。
幸好有备份帮助文档。。。。只能把整个flash builder4卸载了,再安装一次,再把备份的帮助文档覆盖回去了。。。。
以后还原系统由于备份的问题很可能还会遇到这些问题,这里写下来备用,有一样遭遇的朋友也可参考下。