最近想要在word里写latex公式,然后就按网上的教程,安装latex和word的桥梁——Aurora.
结果。。。我的电脑是最新版的win10,但在打开aurora-setup.exe(aurora安装程序)的时候, 什么都没有发生。。。 ---我查看了任务管理器,发现aurora安装程序(下文简称aurora)还在运行。
于是,我结束了aurora,然后用UniversalExtractor提取了一下安装文件。这个 安装程序使用NSIS编写的,然后我查看了解压出的.nsi文件,发现了File aurora.exe File aurora.chm File gdiplus.dll File unicows.dll File remove-toolbars.exe SetFileAttributes word10.dot NORMAL SetFileAttributes word11.dot NORMAL SetFileAttributes word12.dot NORMAL ClearErrors File word10.dot File word11.dot File word12.dot SetFileAttributes word10.dot READONLY SetFileAttributes word11.dot READONLY SetFileAttributes word12.dot READONLY ClearErrors SetOutPath $INSTDIR\defines File regular.tex SetOutPath $INSTDIR\colorer File catalog.xml File default.hrc File hs.hrd File proto.hrc File tex.hrc SetOutPath $INSTDIR\preview File prlyx.def File prtightpage.def File preview.sty File anyfontsize.sty SetOutPath $INSTDIR\ui File empty.xml File ppt.xml File word.xml File excel.xml
这一段是把主程序安装。
DetailPrint "Installing fonts..." DetailPrint "" StrCpy $_2_ $INSTDIR\fonts SetOutPath $_2_ File readme.txt Push $0 Push $R0 Push $R1 Push $R2 Push fonts\RCMB10.ttf
这里是安装字体,把所有字体都复制到fonts文件夹里。
System::Call "GDI32::AddFontResourceA(t) i ('$0') .s"
这一句看不懂干嘛,但猜想是安装这些字体到系统中。
DetailPrint "" DetailPrint "Integrating with Microsoft(R) Office..." DetailPrint "" ReadRegDWORD $R0 HKLM "Software\Elevator Lady Inc.\Aurora" "Installed for all users" IntCmp $R0 0 label_8614 WriteRegStr HKLM Software\Microsoft\Office\Word\Addins\Aurora.Connect FriendlyName "Aurora add-in" WriteRegStr HKLM Software\Microsoft\Office\Word\Addins\Aurora.Connect Description "Aurora support for Office" WriteRegDWORD HKLM Software\Microsoft\Office\Word\Addins\Aurora.Connect LoadBehavior 3 WriteRegStr HKLM Software\Microsoft\Office\Excel\Addins\Aurora.Connect FriendlyName "Aurora add-in" WriteRegStr HKLM Software\Microsoft\Office\Excel\Addins\Aurora.Connect Description "Aurora support for Office" WriteRegDWORD HKLM Software\Microsoft\Office\Excel\Addins\Aurora.Connect LoadBehavior 3 WriteRegStr HKLM Software\Microsoft\Office\PowerPoint\Addins\Aurora.Connect FriendlyName "Aurora add-in" WriteRegStr HKLM Software\Microsoft\Office\PowerPoint\Addins\Aurora.Connect Description "Aurora support for Office" WriteRegDWORD HKLM Software\Microsoft\Office\PowerPoint\Addins\Aurora.Connect LoadBehavior 3 WriteRegStr HKLM Software\Microsoft\Visio\Addins\Aurora.Connect FriendlyName "Aurora add-in" WriteRegStr HKLM Software\Microsoft\Visio\Addins\Aurora.Connect Description "Aurora support for Office" WriteRegDWORD HKLM Software\Microsoft\Visio\Addins\Aurora.Connect LoadBehavior 3 Goto label_8626label_8614: WriteRegStr HKCU Software\Microsoft\Office\Word\Addins\Aurora.Connect FriendlyName "Aurora add-in" WriteRegStr HKCU Software\Microsoft\Office\Word\Addins\Aurora.Connect Description "Aurora support for Office" WriteRegDWORD HKCU Software\Microsoft\Office\Word\Addins\Aurora.Connect LoadBehavior 3 WriteRegStr HKCU Software\Microsoft\Office\Excel\Addins\Aurora.Connect FriendlyName "Aurora add-in" WriteRegStr HKCU Software\Microsoft\Office\Excel\Addins\Aurora.Connect Description "Aurora support for Office" WriteRegDWORD HKCU Software\Microsoft\Office\Excel\Addins\Aurora.Connect LoadBehavior 3 WriteRegStr HKCU Software\Microsoft\Office\PowerPoint\Addins\Aurora.Connect FriendlyName "Aurora add-in" WriteRegStr HKCU Software\Microsoft\Office\PowerPoint\Addins\Aurora.Connect Description "Aurora support for Office" WriteRegDWORD HKCU Software\Microsoft\Office\PowerPoint\Addins\Aurora.Connect LoadBehavior 3 WriteRegStr HKCU Software\Microsoft\Visio\Addins\Aurora.Connect FriendlyName "Aurora add-in" WriteRegStr HKCU Software\Microsoft\Visio\Addins\Aurora.Connect Description "Aurora support for Office" WriteRegDWORD HKCU Software\Microsoft\Visio\Addins\Aurora.Connect LoadBehavior 3
这段似乎是添加Aurora到Office中。
DetailPrint "" DetailPrint "Registering Aurora as an equation object server..." DetailPrint "" DeleteRegKey HKCR CLSID\{EBA04E50-7AB8-457A-A960-A406C06A7B6C} ClearErrors ExecWait "$\"$INSTDIR\aurora.exe$\" /register"
这段是添加Aurora到office的【对象】里。
即:执行aurora.exe /register
label_8645: ClearErrors Push $R0 Push $R1 Push $R2 Push $R3 Push $R4 Push $R5 StrCpy $R4 $INSTDIR\office.dll StrCpy $R5 $INSTDIR\ui IfFileExists $R4 0 label_8655label_8655: StrCpy $R0 $R4 Call :label_8665 RegDLL $R4 Pop $R5 Pop $R4 Pop $R3 Pop $R2 Pop $R1 Pop $R0 Goto label_8669label_8665: SetFileAttributes $R0 NORMAL ClearErrors SetOverwrite on AllowSkipFiles on File $R0 Return
这段是设置office.dll的文件属性为普通,然后释放office.dll到安装目录。
接着,注册这个dll。看完了安装过程,我们对要做的操作有了一个大概的了解:
(1) 复制所有安装文件到安装目录下
(2) 安装所有fonts目录下的字体
(3) 写入到Office的加载项注册表
(4) 执行aurora.exe /register
来注册COM组件
(5) regsvr32.exe office.dll
来注册office.dll
最后,附上我的安装文件:
后注:
为了让注册机能够工作,需要把安装路径写入到HKLM\Software\Elevator Lady Inc.\Aurora
下面的‘默认’里。