2017-04-19 62 views
-4

我寫了一個窗口服務,將文件從轉換XXX使用 DLL到XXX,但當system.accessviolationexception發生時我不能夠捕獲這些異常,即使我有try和捕獲異常system.accessviolationexception catch塊。不能使用C++ DLL

但過了一段時間我的服務自動崩潰,它會在事件查看器中寫入日誌。

描述:由於未處理的異常,進程終止。 異常信息:System.AccessViolationException

try 
{ 
    PDFNet.PDF.Convert.ToHtml(doc, htmlSourceFolderName, options); 
} 
catch (System.AccessViolationException avex) 
    { 
    logMgr.Error(avex.StackTrace); 
    } 
catch (Exception ex) 
{ 
    logMgr.Error(avex.StackTrace); 
} 

有沒有什麼辦法讓我可以得到想要的結果。

+4

顯示我們有問題的適當的代碼將是有益的快活好先生。 [mcve] – MickyD

+0

嘗試 { PDFNet.PDF.Convert.ToHtml(doc,htmlSourceFolderName,options); } catch(System.AccessViolationException avex) logMgr.Error(avex.StackTrace); (例外ex) { logMgr.Error(avex.StackTrace); } –

+1

可能的重複[爲什麼AccessViolationException不能被.NET4.0捕獲](http://stackoverflow.com/questions/12581202/why-accessviolationexception-cannot-be-caught-by-net4-0) –

回答

1

捕捉AccessViolationException不可能一般自.NET 4.0發佈以來。

這是這裏討論:https://stackoverflow.com/a/12581291/1064169

+0

是否有可能,如果我使用.NET 4.5 –

+0

「_Since_」意思是「版本4和更高版本」,所以_in general_,no。爲什麼不閱讀鏈接到另一個問題答案的MSDN文檔? –