分享

OFFICE2003狂人精简版制作手册(二)

 360好文摘手 2018-07-28

经过一个多月的探索和研究,终于制作出OFFICE2003完美精简绿色版,基本上保留了原OFFICE的所有功能,如VBA编程,繁简转换,语言翻译(须连接INTERNET),文件恢复,帮助系统.另外还增加了许多实用工具,如PPT打包程序,拼音之星,EXCEL\PPT\ACCESS繁简转换,WORD试卷王,文档密码破解工具包,文档恢复工具包,PDF工具包(如WORD转PDF,PDF转WORD等).
本人觉得这个版本是目前所有绿色OFFICE2003中最完美的了,下面把OFFICE2003绿化问题及解决方法贴出来供大家研究.

问题一:提示没有安装的问题与关于为何OFFICE几个组件不能同时使用的个人意见
ID_011.DPC文件为何物?有什么作用?恐怕没有几个人能说得清楚,前段时间网上流传EXCEL和WORD不能同时使用提到这个文件,但对于其观点,本人持不同的看法。原因在于,我只装ACCESS,卸掉干净后再装WORD,EXCEL等组件,发现互相替换都可以使用,这说明EXCEL和WORD等不能同时使用的根源根本不在于该文件;我感到越发好奇了,最后我干脆删除改文件,然后运行WORD,EXCEL等组件,发现一个奇怪的现象,如果恢复该文件,只要先前没有运行的组件则可以继续使用,运行过的组件一律提示没有安装,我想应该是注册表的问题,于是重新导入注册表,所有组件又可以同时使用了,这说明这个文件与注册表有着密切的关联。我以前在制作绿色软件的过程中发现只要安装好OFFICE组件后不运行该组件,那么导出注册表后制作的绿色软件也会有同样的提示,如果运行后再导出则不会出现这个提示,记得以前这个问题是因为Licensing只有安装后运行一次后才能产生,跟着这个思路:我重新删除ID_011.DPC文件,并运行WORD,发现WORD对应的HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Common\Licensing下的授权信息自动被删除了,没有运行的组件对应的授权信息则没有删除,我突然明白了原理居然是一样的,最后简单的可以得出结论:OFFICE组件对应HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Common\Licensing的授权信息是通过ID_011.DPC文件来检测是否存在的,运行WORD等组件时如果发现不存在如果不存在ID_011.DPC文件,则自动删除对应的授权信息,如果存在改文件而注册表中没有对应的授权信息则提示这个没有安装的错误提示从而无法使用相应组件,所以建议在绿化OFFICE时一定先要运行一次所有组件再导出注册表,导出时一定要保留HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Common\Licensing下的授权信息;另外需要说明的是如果注册表没有指定HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\11.0\Common\InstallRoot的安装路径,也会提示同样的错误既提示没有安装。

问题二:操作系统当前的配置不能运行此应用程序和自动退出问题
1.如果没有正确指定MSO.DLL文件路径则会提示操作系统当前的配置不能运行此应用程序,解决方法也很简单,注册表HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\11.0\Common\FilesPaths下指定该文件路径即可,这里可以转移到主目录下.
2.如果不存在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\11.0\Registration\{90110804-6000-11D3-8CFE-0150048383C9}下的DigitalProductID则启动时会无提示的退出.

问题三:CPU占用100%问题
分析,是因为注册表的相关键不完整造成的,经过分析,发现注册表对应的如下三项中任何一项缺少或不完整都会造成CPU占用100%:
HKEY_CLASSES_ROOT\Installer\Products\4080110900063D11C8EF10054038389C可以只保留项,其下键可以全部删除
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Products\4080110900063D11C8EF10054038389C\InstallProperties下必须保留WindowsInstaller,其余可以全部删除
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Components对应的EXE和公用MSO.DLL组件路径

问题四:VBA问题
1.OFFICE提示没有安装VBA或者VBA初始化错误问题
与ACCESS2003不同的是OFFICE其他组件要使用VBA必须在保留VBAFiles特性,否则提示没有安装VBA(而ACCESS2003无需要在注册表中表明该特性,而直接把VBA相关文件复制到根目录即可使用,这也与OFFICE2000只需保留组件路径不同);如果使用FM20.DLL控件时必须有对应的语言文件如FM20CHS.DLL,否则使用时会自动退出;必须保留对应的OLB文件如MSWORD.OLB,否则提示无法初始化VBA环境.
2.VBA中互相调用组件提示运行时429错误,不能创建部件的问题:
分析,原因有很多,可通过如下思路来解决:一是不存在对应的部件,如调用WORD时必须存在MSWORD.OLB部件(或提示调用DLL出错)和WINWORD.EXE(或提示自动化错误);二是VBA引用错误,如引用的路径已经变更,没有被自动引用(此时可能提示编译错误:用户定义类型未定义);三是类没有注册,或注册表有问题,如果是可以使用regsvr32注册的类可以直接使用REGWSVR32来注册,如果不能使用该方式注册的则必须在注册表CLSID中注册,如MSWORD.OLB这个类注册则属于后者(这是提示不能创建部件的主要原因,见下面的有关注册表设置),另外,只要在CLSID中有了类注册,其实TYPELIB中不必要再进行对象的注册表设置,会自动产生.
[HKEY_CLASSES_ROOT\Word.Application]
@='{000209FF-0000-0000-C000-000000000046}'

[HKEY_CLASSES_ROOT\CLSID\{000209FF-0000-0000-C000-000000000046}\InprocHandler32]
@='ole32.dll'
[HKEY_CLASSES_ROOT\CLSID\{000209FF-0000-0000-C000-000000000046}\LocalServer32]
@='D:\\OFFICE2003\\OFFICE11\\WINWORD.EXE /Automation'

问题五:菜单插入对象中对象丢失和在IE中无法直接打开OFFICE文件问题
分析,如果想在OFFICE组件中互相插入对象,而在插入对象中不存在对象,可能原因与上述近似,如不存在对应组件,注册表没有对象类注册信息等,通过分析发现这个主要与文件关联和关联对应的CLSID设置有关,如下面WORD的注册表设置.
其中第前5行是文件关联;HKEY_CLASSES_ROOT\Word.Document.8\CLSID对应CLSID类信息,其中HKEY_CLASSES_ROOT\Word.Document.8\DocObject用于在IE浏览器中开启档案(其实也可以通过在文件夹选项\文件类型\高级选中在同一窗口中浏览来实现,另外如果你不小心在IE中打开文件下载对话框时勾选了'打开此类文件之前总是询问',那么以后都不会再出现下载对话框,而是按照你最后执行的操作来操作,如果要取消可以在文件夹选项该文件类型的高级设置中勾选'下载后确认打开'即可)
[HKEY_CLASSES_ROOT\.doc]
@='Word.Document.8'

[HKEY_CLASSES_ROOT\Word.Document.8\DefaultIcon]
@='D:\\OFFICE2003\\OFFICE11\\WINWORD.EXE,0'
[HKEY_CLASSES_ROOT\Word.Document.8\shell\Open\command]
@='\'D:\\OFFICE2003\\OFFICE11\\WINWORD.EXE\' \'%1\''
[HKEY_CLASSES_ROOT\Word.Document.8]
@='HYSoft Word'
[HKEY_CLASSES_ROOT\Word.Document.8\CLSID]
@='{00020906-0000-0000-C000-000000000046}'
[HKEY_CLASSES_ROOT\Word.Document.8\DocObject]
[HKEY_CLASSES_ROOT\Word.Document.8\Insertable]

[HKEY_CLASSES_ROOT\CLSID\{00020906-0000-0000-C000-000000000046}]
@='HYSoft Word'
[HKEY_CLASSES_ROOT\CLSID\{00020906-0000-0000-C000-000000000046}\DocObject]
@='16'
[HKEY_CLASSES_ROOT\CLSID\{00020906-0000-0000-C000-000000000046}\ProgID]
@='Word.Document.8'
[HKEY_CLASSES_ROOT\CLSID\{00020906-0000-0000-C000-000000000046}\InprocHandler32]
@='ole32.dll'
[HKEY_CLASSES_ROOT\CLSID\{00020906-0000-0000-C000-000000000046}\LocalServer32]
@='D:\\OFFICE2003\\OFFICE11\\WINWORD.EXE'
[HKEY_CLASSES_ROOT\CLSID\{00020906-0000-0000-C000-000000000046}\Verb]
[HKEY_CLASSES_ROOT\CLSID\{00020906-0000-0000-C000-000000000046}\Verb\0]
@='EDIT(&E),0,2'
[HKEY_CLASSES_ROOT\CLSID\{00020906-0000-0000-C000-000000000046}\Verb\1]
@='OPEN(&O),0,2'
公式编辑器的解决方法类似,如下:
保留EQNEDT32.EXE EEINTL.DLL MTEXTRA.TTF三个文件,并且必须把字体文件复制到系统字体文件夹才有效,在注册表中增加CLSID类否则在插入对象中无法找到该对象,注册表如下:
[HKEY_CLASSES_ROOT\Equation.3\CLSID]
@='{0002CE02-0000-0000-C000-000000000046}'
[HKEY_CLASSES_ROOT\Equation.3\Insertable]
[HKEY_CLASSES_ROOT\Equation.3]
@='HYSoft Equation'

[HKEY_CLASSES_ROOT\CLSID\{0002CE02-0000-0000-C000-000000000046}\LocalServer32]
@='D:\\OFFICE2003\\OFFICE11\\EQNEDT32.EXE'
[HKEY_CLASSES_ROOT\CLSID\{0002CE02-0000-0000-C000-000000000046}\InProcHandler]
@='ole2.dll'
[HKEY_CLASSES_ROOT\CLSID\{0002CE02-0000-0000-C000-000000000046}\InprocHandler32]
@='ole32.dll'
[HKEY_CLASSES_ROOT\CLSID\{0002CE02-0000-0000-C000-000000000046}\verb\0]
@='&Edit,0,2'
[HKEY_CLASSES_ROOT\CLSID\{0002CE02-0000-0000-C000-000000000046}\verb\1]
@='&Open,0,2'

问题六:模板与插件问题
不同组件的模板和插件出现的问题和解决的方法不一样.下面分类说明.
1.WORD的DOT和WIZ打开是空白不能自动调用(在工具\宏和加载项中不会自动改为打开的模板)的解决方法:其实WORD的.DOT和.WIZ并不是通过打开来实现的,而是通过新建中的ddeexec来实现的,你选中一个模板点右键就知道这点了,只有新建没有打开,所以如果你改为打开方式而没有新建方式,那么模板将自动变为记事本打开;另外,这个还与对应的CLSID有关,见下面的修正注册表.
[HKEY_CLASSES_ROOT\.dot]
@='Word.Template'
[HKEY_CLASSES_ROOT\Word.Template.8]
@='HYSoft Word Template'
[HKEY_CLASSES_ROOT\Word.Template.8\shell\New\command]
@='\'D:\\OFFICE2003\\OFFICE11\\WINWORD.EXE\' /n /dde'
[HKEY_CLASSES_ROOT\Word.Template.8\shell\New\ddeexec]
@='[REM _DDE_Direct][FileNew(\'%1\')]'
[HKEY_CLASSES_ROOT\Word.Template.8\CLSID]
@='{00020906-0000-0000-C000-000000000046}'

[HKEY_CLASSES_ROOT\.wiz]
@='Word.Wizard'
[HKEY_CLASSES_ROOT\Word.Wizard.8]
@='HYSoft Word Wizard'
[HKEY_CLASSES_ROOT\Word.Wizard.8\shell\New\command]
@='\'D:\\OFFICE2003\\OFFICE11\\WINWORD.EXE\' /n /dde'
[HKEY_CLASSES_ROOT\Word.Wizard.8\shell\New\ddeexec]
@='[REM _DDE_Direct][FileNew(\'%1\')]'
[HKEY_CLASSES_ROOT\Word.Wizard.8\DefaultIcon]
@='D:\\OFFICE2003\\OFFICE11\\WINWORD.EXE,2'
[HKEY_CLASSES_ROOT\Word.Wizard.8\CLSID]
@='{00020906-0000-0000-C000-000000000046}'
另外如果你要把自己的模板添加到新建文件的列表中,必须把HKCR的COMPONTES组件导入才会在新建模板中看到.我这里的模板都直接放到Library下,用户自己选择加载.
题外话:在解决问题过程中,发现一种破解.DOT和.WIZ模板和向导的方法:先改扩展名为DOC文件,然后再使用PW获取密码,如果直接使用PW获取密码,将提示失败,或者你即使获取了密码使用.DOT和.WIZ格式也提示密码错误,使用这个方法我成功破解了OFFICE自带模板和拼音之星,但是没有成功破解WORD试卷王(关键是安装有证书并锁定了工程).
2.EXCEL加载宏:位于Library下,增加了几个常用外挂。其中规划求解SOLVER提示找不到SOLVER.DLL,Analysis提示找不到ANALYS32.XLL文件的原因是缺少XLCALL32.DLL文件,复制该文件到OFFICE11下即可(通过PEID监测得知);其中欧元转换向导需要REFEDIT.DLL和MSOEURO.DLL的支持(通过PEID检测或者通过破解源代码查看引用得知);其他如SUMIF,LOOKUP等也使用了REFEDIT.DLL控件;最后需要说明的是XLA文件不同于DOT等文件,是通过宏加载项来加载的,而不是通过打开方式或新建方式实现的.
题外话:在检测加载宏中发现了破解.XLA的方法,如果是XLA文件可以先用OFFKEY转化为XLS文件并使用该软件获取密码,不转化无法获取密码,在VBA下甚至提示密码错误;如果EXCEL工程被锁定,可以使用Advanced VBA Password Recovery解除锁定或使用其他工具.
3.PPT模板和加载项:pot模板也是通过新建方式而不是通过打开方式实现的,这里去掉了所有的PPT模板,同WORD,所以这里不再说明.

问题七.有关繁简翻译问题
1.自带的WORD繁简转换:繁简转换只适合WORD使用,但是实际上通过VBA编程也可以为ACCESS,EXCEL等调用来实现.要使用繁简转化必须把MSTR2TSC.DLL,MSTR2TSC.LEX两个文件复制到根目录才会出现繁简转换按钮和菜单,注册表不用任何设置,必要的时候还可以复制MSLIB.DLL这个文件到根目录.
2.增加OFFICE繁简转化插件:为了能在EXCEL等组件中使用繁简转化,为了能在EXCEL等中使用繁简转化,增加了MSTSSC工具存放在OFFTOOLS目录中,用户可以自己加载,该工具属于COM加载项,不仅需要注册TCSCConv.dll文件;同时还必须默认安装到Common Files\Microsoft Shared\Proof目录才有效;这个组件并不是独立存在的,所以该目录还必须存在MSTR2TSC.DLL和MSTR2TSC.LEX文件才能加载成功.
3.有关在线翻译和其他信息检索功能:
OFFICE自带了语言翻译功能,但是只是内置了中文与英文的翻译,如果想使用其他语言翻译,那么还必须连接到INTERNET,很奇怪的是连接后并无法获取其他国家语言的翻译,经过研究发现,不要安装内置的语言翻译服务就可以在信息检索中使用更多的其他语言的翻译服务,还自动增加了其他的语言翻译服务如英语小助手,LINGWORD等语言翻译服务,如果你已经安装了内置的语言翻译服务也可以使用如下的方式解决这个问题,一是打注册表补丁,把Rs_Lan.reg导入注册表即可,二是可以在信息检索选项中增加语言翻译服务(繁体里添加的则是MSN搜索服务),地址为http://office.microsoft.com/Research/query.asmxhttp://www./wl/msoffice11
还需要注意的是如果翻译时中文字符不能全部显示,请把RICHED20.DLL文件复制到和MSO.DLL相同的目录,这个BUG费了我不少时间才发现。

这里再介绍几个其他有用的信息检索服务。
1.如果有访问繁体的有关信息服务请使用下列地址:
http://office.microsoft.com/zh-tw/marketplace/EY010687411028.aspx
主要服务有:
旅游信息查询服务(还需要下载TravelRich.exe):http://service./office/Registration.asmx
联合知识库查询服务:http://ws./UDN/services/UdnResearch

2.如果要访问简体有关的服务请参考如下地址
http://office.microsoft.com/zh-cn/marketplace/EY010687412052.aspx
主要服务有:
法律咨询:http://search.:6000/RLS.asmx
股票信息:http://203.207.226.83:8080/Office/StockInfo/StockInfo.asmx
房地产信息:http://203.207.226.100:800/real/real.asmx(失效)
天网搜索:http://web./search.asmx(失效)

3.有关外文的服务参考如下地址
http://office.microsoft.com/en-us/marketplace/EY010687411033.aspx
主要服务有:
http://services./office/elibrary.asmx
http://integrate./research/query.asmx
http://services./msresearch/Registration
http://msrp./MSOffice/MSOffice

问题八.帮助系统
OFFICE2003的帮助文件有了很大的不同,采用XML调用,所以除了必须有MSOHELP.EXE和MSOHLP11.CHM两个公用语言支持文件外,还必须有不同组件对应的XML和CHM帮助文件,如WORD对应3个文件MF_WDTOC.XML和WDTOC.XML用于现实帮助目录列表,WDMAIN11.CHM为帮助文件;另外为了能搜索帮助文件,还必须有AD.DLL和对应的AW文件,如WDMAIN11.AW文件,但无论怎么设置包括注册表都无法使用索隐,提示没有安装帮助文件或索引损害,不知原因何在.这里提供帮助,但全部是补丁方式提供以便用户自己选择是否安装.

问题九.部分控件及说明
OFFICE CONTROL 1.0 TYPE:AUTHZAX.DLL
msrtedit 1.0 type:MSRTEDIT.DLL
Word East European Fonts Tools:EEFONTS.DLL
EXCEL CREAT CUBE:2052\XLSLICER.DLL(可注册,但不可引用)
Word Table Head Wizard:TBLHEAD.DLL(必须复制到OFFICE11下才能现在表格头制作菜单项,但无法使用)
word wasum:2052\WWASUM.DLL(不知道这个控件做什么的,好像是统计求和,不能加载也不能注册)
XML 5.0:MSXML5.DLL,MSXML5R.DLL(如果没有这个支持,则加载项会提示错误)
OFFICE SOAP:MSSOAP30.DLL,WISC30.DLL,2052\MSSOAPR3.DLL
OLAP:\Ole DB\MSOLAP80.DLL
OLE DB PROVIDER FOR OLAP:\Ole DB\MSOLUI80.DLL
DTC Framework:Triedit\DTCRT.DLL
ADD-IN DESIGNER:Designer\MSADDNDR.DLL
OFFICE RUNTIME 1.0 TYHPE:MSORUN\MSORUN.DLL
OWC:MSOWCW.DLL,2052/MSOWCWI.DLL(向导文件,这两个文件ACCESS无);OWC10.DLL,2052\OWCI10.DLL(OWC10版);OWC11.DLL,ATP.DLL,2052\OWCI11.DLL(OWC11版)
QUERY 7.0 TYPE LIBRARY:Visual Database Tools
Sample com addin project:multimgr.dll(ACCESS无此文件)
msshed 1.0 type:MSClientDataMgr\MSCDM.DLL(只ACCESS,无此文件,部分程序会出现问题)

问题十:其他问题
1.ACCESS个性问题:ACCESS与OFFICE其他组件绿化时发现有很多不一样,一是必须在注册表HKEY_CLASSES_ROOT\Licenses下存在注册授权信息方可使用,否则提示没有授权而无法启动;二是不需要在注册表中增加VBA特性即可使用VBA系统;三是注册表必须存在AccessWizards特性才能使用各种向导,必须存在DeveloperWizards特性才能使用加载项(没有该特性变灰色)等工具;四是HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\11.0\Access下的Jet\4.0对应导入导出向导,不存在该项,则导入导出的文件列表为空且无法使用;Report Formats对应报表格式文件列表和选项;Menu Add-Ins对应开发向导特性,没有该项,加载项同样为灰;Wizards对应各种控件和表单向导,如果不存在则各种向导无法使用;Clipboard Formats对应剪贴板格式。另外,因为ACCESS的SNAPSHOR比较大,包含四个文件OMFC.DLL OMFCSAT.DLL SNAPVIEW.EXE SNAPVIEW.OCX,所以替换为2000的文件,并且必须放于根目录才能启动,其他目录无法启动,还有一个BUG就是报表无法输出为EXCEL格式,古知道为何。
2.日文字体支持:保留CENTURY.TTF文件并增加特性.
3.艺术边框:保留BORDERS文件夹并可替换内容,注册表增加MSART1.BDR组件路径否则无法看到边框
4.WORD文件恢复:保留EEFONTS.DLL文件并增加注册表对应组件路径和特性.
5.PPV:PPTVIEW.EXE PPVWINTL.DLL 可以用于打包PPT文件并播放,无需要注册表做任何设置,但最好做出PPS文件关联或使用命令行调用pptview.exe 123.ppt,本人已经成功制作出PPT打包制作程序,支持客户端播放加密.

增强功能:
拼音大师:MSINET.OCX PY.DLL,pypbds.dot,前两个文件必须放到SYSTEM32下

遗留问题:
   由于本人水平有限,在绿化过程中遇到一些目前依然不能解决的问题,主要体现在:.
   1.帮助系统搜索失效:即使说在帮助系统中的'搜索'中输入搜索关键字后将找不到任何结果,但是如果用户已接入INTERNET的话将自动在MSDN中查找资料.如果遇到此问题,请手到打开帮助文件在搜索,即可获得需要的结果.
   2.软件冲突问题:如果已经安装过ACCESS或是OFFICE的其他组件,可能在安装本软件后运行时会出现一些未知的错误,原ACCESS或OFFICE组件也可能出现一些未知的错误,尽管本人采取了备份和恢复注册表的方式进行处理。本软件建议在干净的电脑上安装.


关 键 字:HUNRYBECKY
相关文章:
OFFICE2003狂人精简版制作手册(一)

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多