NoteFirst的Word插件(WordAddIn)安装过程中遇到的问题和解决方案
1. 綜述
本文的主要意圖是闡述在NoteFirst的Word插件或稱Word AddIn的安裝過程中遇到的問題和解決方案。
主要問題描述:在Microsoft Office自定義項安裝程序的安裝期間出錯,遇到以下問題:System.IO.FileNotFoundException: 系統找不到指定的文件。(異常來自HRESULT:0x80070002)
該AddIn屬于Word的COM加載項。
在我對該問題進行百度的過程中發現,并沒有針對NoteFirst的解決方案,更多的是在VS的使用過程中出現的問題,這也是寫下這篇文章的主要誘因。更多地,我參考其它人遇到的同類問題解決了自己的,因此為同樣異常代碼的相關問題提供一個參考。
2. 背景
環境:
- Win10
- Microsoft .NET Framework 4
- Microsoft Office Pro 2016 - Word
- NoteFirst 普及版 5.00.01.20180609
NoteFirst:一款文獻管理軟件。1
NoteFirst 文獻管理軟件是國內首款網絡版的文獻資料管理、論文寫作及科研協作工具,主要功能包括文獻收集管理、論文寫作幫助、科研協作交流以及學術信息搜索。NoteFirst 基于互聯網, 可以多臺電腦數據可以自動同步,并且全面支持國家標準,并滿足SCI、EI 等收錄中文論文要求雙語參考文獻的格式要求。
我:非IT相關領域學生。并不是第一次安裝/使用Office插件,可能是由于之前用的諸如Acrobat等軟件和AudTool等專用插件的成熟度比較高的原因,安裝過程都很順利。
3. 遇到的問題
在NoteFirst的安裝過程中,安裝程序運行到一半遇到問題,此時檢查發現軟件的主體部分已經安裝完畢并且功能齊全,可以正常使用。故猜測其Setup的內在步驟分成兩部分:軟件主體+Word插件。(因為是一個文獻管理軟件,所以只涉及到Word)問題就出現在WordAddIn即Word插件的安裝上。
錯誤代碼:HRESULT:0x80070002
主要問題描述:System.IO.FileNotFoundException: 系統找不到指定的文件。
打開Word時,會自動運行該COM加載項的安裝程序,出現報錯。查看加載項列表發現,該加載項雖然出現在了運行時加載的列表中,但是狀態是未加載并存在問題。
由于該Office插件安裝的報錯指向了NoteFirst的安裝目錄,因此我找到了NoteFirstAddIn2016.vsto這個文件,應該是一個Office插件的安裝程序。運行報錯指向了C盤Common Files的一處地址,但在C盤中并沒有NoteFirst建立的目錄。
4. 解決方案
(1) 失敗嘗試
(2) 有效嘗試1
有文章3認為,Office加載項無法成功安裝的原因在于注冊表,于是需要修改注冊表,在如下兩個位置各添加一項:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\Word\Addins\插件名稱]“Description”=“Word Financal Product For test”“LoadBehavior”=dword:00000003"Manifest"=“file:///D:\test\test.vsto|vstolocal”“FriendlyName”=“Word Financal Product For test”
[HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Office\Word\Addins\插件名稱]“Description”=“Word Financal Product For test”“LoadBehavior”=dword:00000003"Manifest"=“file:///D:\test\test.vsto|vteststolocal”“FriendlyName”=“Word Financal Product For test”
當然,注冊表項里的位置需根據實際情況進行調整,并且為了注冊表 可能存在(我不明白) 的一致性,我還根據隔壁的 OneNote.WordAddinTakeNotesService 添加了 “CommandLineSafe”=DWORD:00000003
實際上,NoteFirst在注冊表中的位置是
\HKEY_CURRENT_USER\Software\Microsoft\Office\Word\Addins\NoteFirstAddIn2016
它Manifest的數值數據有一個 非常奇怪(我看不懂)的格式file:///D:/NoteFirst/KMS/NoteFirstAddIn2016.vsto
改好注冊表之后,最神奇的事情發生了:
我想起來Office之前出了點小問題處在沒有激活的狀態,于是激活了再打開測試Word文檔,發現加載項的安裝程序順利運行并且在菜單欄/工具欄出現了NoteFirst的插件,跟Acrobat成為了鄰居,并且可以正常使用。
隨后,出于一個理想化(強迫癥)的原因,我刪掉了上述在注冊表中新加的兩項,再次打開Word發現插件從工具欄消失了。(實際上在真正解決了此問題后我又查看了注冊表的這兩個位置,并沒有建立NoteFirst相關的項。不過)此時,再次運行NoteFirstAddIn2016.vsto報錯為
[T^T Orz]
(3) 有效嘗試2
有文章4認為解決該問題的關鍵在該文件處:C:\Program Files\Common Files\microsoft shared\VSTO\10.0\ VSTOInstaller.exe.config
其內容為:
[報錯位置是http的位置(估計到了https處也會出問題)]
并且提供了解決方案:
–刪了這個文件就好了
就好了。
(4) 未采用方法
有文章5 或6表示此異常是由于沒有正確安裝 NuGet Package Manager引起的,但是由于在我記憶中并沒有見過NuGet,所以并沒有嘗試此方法。
如果是在VS的使用過程中遇到的該問題,此方法值得一試。
5. 總結
1 ??
2 ??
3 ??
4 ??
5 ??
6 ??
總結
以上是生活随笔為你收集整理的NoteFirst的Word插件(WordAddIn)安装过程中遇到的问题和解决方案的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: excel公式不自动计算_梯形丝杠设计计
- 下一篇: 微信小程序实现word,excell等文