1. 程式人生 > >外掛載入導致outlook崩潰

外掛載入導致outlook崩潰

問描述:

載入外掛導致outlook崩潰(向outlook2016拖入檔案,之間顯示)

 

 

       由於對外掛的程式設計幾乎不理解就有了上文,然後不知道為啥,心裡一個盡的想著,讓外掛自己重啟就ok了,看看外掛哪裡出錯了。

        但是實際上市什麼,LoadBehavior的值決定了你說載入還是不載入,怎麼載入外掛。。。。

然後和你沒有什麼球關係。但是為啥會崩潰吶。

LoadBehavior = 3 (載並且每次Office程式啟動時都裝載 ,一般設定為3),崩潰有兩個原因。

 

Microsoft Office 應用程式可以禁用載入時發生意外行為的外接程式。如果應用程式在您嘗試除錯外接程式時沒有載入該外接程式,則說明應用程式可能已硬禁用或軟禁用您的外接程式。重新啟用外接程式的過程因應用程式的不同而不同。

1、硬禁用發生

硬禁用的外接程式當在載了外接程式的情況下執行的使用者程式碼導致應用程式意外關閉時,以及當建構函式或 Startup 事件處理

程式正在執行的情況下停止偵錯程式時,會發生硬禁用。

重新啟用外掛:

Microsoft Office 2003

幫助 ——> 關於 Microsoft Office <應用程式名稱> ——> 禁用專案——>Addin:<外接程式名稱>AddinLoader.dll——>啟用

2007 Microsoft Office

Microsoft Office 按鈕 ——> <應用程式名稱> 選項 ——> 載入項 ——> 禁用的應用程式載入項 ——> 名稱 ——> 位置 ——> 管理 ——> 禁用的載入項 ——>  開始 ——> 啟用 ——> 關閉

2、軟禁用的繁盛

軟禁用外接程式當外接程式在建構函式或 Startup 事件處理程式中引發未處理的異常,而應用程式未意外關閉時,會發生軟禁用。

注意:重新啟用軟禁用的外接程式時,應用程式會立即嘗試載入該外接程式。如果最初導致應用程式軟禁用外接程式的問題未解決,則應用程式將再次軟禁用該外接程式。

對於Microsoft Office 2003 中的應用程式,有兩個不同的過程。您使用的過程取決於應用程式。

       然後針對實際情況我我只能,檢視程式碼,但是暫未發現什麼不合理的地方。就添加了日誌(同事重啟該外掛後問題不再復現)。和ThisAddIn_Startup對應DispEventAdvise(看是否是在建立連線的時候出錯,靜待佳音吧,看會不會出現)

 

參考資料:

LoadBehavior

詳解COM Add In的LoadBehavior及其妙用

LoadBehavior

COM Add In 的 LoadBehavior

office 2010 64 位 com 載入項

如何禁止系統禁用OUTLOOK外掛