解决在Win10上无法安装Aurora的问题
最近想要在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_8626
label_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_8655
label_8655:
StrCpy $R0 $R4
Call :label_8665
RegDLL $R4
Pop $R5
Pop $R4
Pop $R3
Pop $R2
Pop $R1
Pop $R0
Goto label_8669
label_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
对于Office2010以上的电脑,可以跳过(3)。(因为office2013和2016不支持aurora的office加载项)
最后,附上我的安装文件:
https://files.cnblogs.com/files/mchmch/Aurora.7z
后注:
为了让注册机能够工作,需要把安装路径写入到HKLM\Software\Elevator Lady Inc.\Aurora
下面的‘默认’里。