異常System.AccessViolationException的處理方式

 最近用FFmpeg處理視頻, 提示「」當代碼嘗試讀取或寫入沒法訪問的內存「」,而後程序退出。已經設置全局異常也沒有捕獲到。app

 C#調用非託管方法程序容易奔潰,緣由是非退託管代碼報的異常未能被捕獲到。記錄一下兩種解決方法:code

 

1、使用配置文件兼容之前代碼視頻

    爲了與舊代碼兼容,在app.config添加legacyCorruptedStateExceptionsPolicy元素。 內存

   一樣代碼在.Net2.0下面正常,4.0程序就退出 。get

 

2、方法添加特性io

方法上面添加這個特性 [System.Runtime.ExceptionServices.HandleProcessCorruptedStateExceptions] class

try catch就能夠捕捉AccessViolationException異常。配置

相關文章
相關標籤/搜索