我正在將.Net Framework 2.0應用程序遷移到.Net Framework 4.0。.Net 4.0和.Net 2.0中的異常代碼更改
因爲我有一個程序來獲取異常代碼,當一個異常提出。但不幸的是,.Net Framework 2.0和.Net Framework 4.0之間的Exception代碼有所不同。下面是我的代碼
try
{
throw new DirectoryNotFoundException();
}
catch (Exception ex)
{
MessageBox.Show(Marshal.GetExceptionCode().ToString());
}
上述程序返回「-532459699」用於.NET Framework 2.0,並返回「-532462766」爲框架4.0
有沒有什麼辦法讓異常代碼與.Net Framework 2.0相同?
Marshal.GetExceptionCode甚至適用於正常的託管異常嗎? – Dirk 2014-09-24 11:59:53
在MSDN上的註釋部分中提到:'GetExceptionCode只針對結構化異常處理(SEH)的編譯器支持提供' – Magnus 2014-09-24 12:03:13
您看到的異常太多了,請參閱http://stackoverflow.com/a/9164144/426894和http ://stackoverflow.com/a/19919001/426894 – asawyer 2014-09-24 12:05:55