繁体   English   中英

在C#中捕获COM异常的最佳实践是什么?

[英]What are the best practices on catching COM-exception in C#?

请问,请告诉我如何以正确的方式处理C#中的COM异常? 例如,我正在使用DirectorySearcher并获取COMException: The server is not operational 我该如何处理这个例外? 我可以为COMException编写一个处理程序,但是我如何识别特定的异常类型? 我应该检查异常消息或HRESULT吗?

您必须查找HRESULT ,这 异常实例错误代码 ,因此是了解真实情况的唯一方法。 您可以将这些正是DeCypher HRESULT这个这个文章。

例:

try
{
    //Your code
}
catch(COMException ex)
{
    int error = ex.ErrorCode;

    //Conditions and error handling
}

基本上HRESULT是一个32位整数,其中两个最重要的位描述它是什么类型的消息(成功,信息,警告,错误)。 其他30位用于描述消息的其余部分。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM