2010-10-22 102 views
0

从IOException或常规异常中获取(十六进制)错误代码!从IOException中获取错误代码

这可能吗?我知道它有一个错误代码(HResult),但get accessor是私有的。

我会做一些ComException的事情,但我不知道这样做的优点/缺点,如果它甚至可能/相同。

回答

2

Here建议调用Marshall.GetHRForException。

+0

似乎工作! :)我其实只是发现了这个,然后回来发布我自己的答案,但是你打败了我:P – caesay 2010-10-22 06:36:39

0

从Exception或IOException派生指定的类并通过内部属性公开HRESULT值。

class MyException:Exception 
{ 
    internal GetHRResult() 
    { 
     return base.get_HResult(); 
    } 
    ..... 
} 
+0

这将是很好的,除了我试过,出于某种原因,(IOexceptionNameHere as MyException)返回null。 – caesay 2010-10-22 06:20:39

+0

看起来像我不能将例外投到自定义的。 – caesay 2010-10-22 06:21:59