![](/img/trans.png)
[英]Write and Read the same xml file with C# (RTD server for excel)
[英]C# Excel 2007 RTD Server crashes on exit
我已經根據C#中Kenny Ker的多個主題編寫了ac#RTD服務器
他的設計與我的設計之間的主要區別在於,我的數據來自WCF客戶。 我使用相同類型的計時器,每隔幾秒鍾調用m_callback.UpdateNotify();
。 我的RefreshData
方法使用主題值在WCF客戶端中調用一個函數,並將結果用作excel的值。 一切都很好。
問題是當我關閉Excel時出現的。
當我關閉Excel時,出現一個消息框,提示“ Microft Excel已停止工作”
我的ServerTerminate()
方法清除了我所有的主題,在WCF客戶端上的調用關閉,並且退出而沒有錯誤。
我認為問題可能是COM問題,所以我嘗試添加
while ( Marshal.ReleaseComObject( m_callback ) > 0 ) ;
m_callback = null;
彈出窗口仍然顯示,所以我嘗試添加
GC.Collect();
GC.WaitForPendingFinalizers(); //SEHException thrown from this
GC.Collect();
GC.WaitForPendingFinalizers();
添加這些行確實會引發異常。 如果我忽略該例外,則excel會關閉而沒有任何問題,但是,如果我在裝有excel 2010的計算機上安裝RTD服務器,則彈出框仍然存在。
我有Excel 2007(12.0.6665.5003)SP3 MSO(12.0.6662.5000)我正在使用Visual Studio 2008開發c#RTD服務器,並且我的項目引用了Microsoft.Office.Interop.Excel版本12.0.0.0
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.