我想在文本框中打印错误HRESULT" #define" -symbol,但我似乎无法找到如何做到这一点。当我在线搜索时,我发现的是如何获取错误描述文本等。
这就是我希望我的文本框输出的一部分:
Error: 0x80040E01 (DB_E_ROWLIMITEXCEEDED)
等所有可能的错误代码。 我使用_com_error err(hr)方法成功获得的十六进制值和错误描述文本。所以这一切都很好,但是我连接得到的messageID(在这个例子中是DB_E_ROWLIMITEXCEEDED)打印成一个字符串。
有什么建议吗?
答案 0 :(得分:2)
这是FACILITY_ITF
错误代码。您可以从第4个十六进制数字中得出结果为4. documentation说:
错误的实际含义由接口定义。也就是说,从两个不同的接口返回的具有完全相同的32位值的两个HRESULT可能具有不同的含义。
由于此错误由接口定义,并且未由系统定义,因此接口负责为错误提供任何描述性文本。如果界面没有这样做,那么你几乎陷入困境。我能做的最好的事情就是识别特定的界面,然后提供缺失的文本。