请您告诉我如何以正确的方式处理 C# 中的 COM 异常?例如,我正在使用DirectorySearcher
并获取COMException: The server is not operational
. 我应该如何处理这个异常?我可以为 编写一个处理程序COMException
,但我如何识别特定的异常类型?我应该检查异常消息还是HRESULT
为它检查?
问问题
1289 次
1 回答
1
您必须寻找HRESULT
,这是Exception Instance的错误代码,因此是真正知道发生了什么的唯一方法。你可以HRESULT
用这个和这篇文章来解密。
例子:
try
{
//Your code
}
catch(COMException ex)
{
int error = ex.ErrorCode;
//Conditions and error handling
}
基本上HRESULT
是一个 32 位整数,其中两个最高有效位描述了它是什么类型的消息(成功、信息、警告、错误)。其他 30 位用于描述消息的其余部分。
于 2013-08-13T08:33:39.653 回答