【发布时间】:2011-02-24 05:54:13
【问题描述】:
谁能提供一些关于如何以编程方式将 HRESULT (http://en.wikipedia.org/wiki/HRESULT) 值转换为人类可读消息的信息?
我知道实用程序 ERR.EXE 可以执行此操作,但我的应用需要向我的用户显示一些有意义的消息,而不是神秘的 0x800A03EC。
【问题讨论】:
-
我在这里遗漏了什么吗?为什么不能使用
Try...Catch并向用户显示错误消息? -
@Otaku,我正在进行 Excel VSTO 调用,其中一些调用在失败时将返回 HRESULT,而在 COMException 的消息部分中没有任何其他内容。
-
@ToddMain 因为保存异常 ID 以不立即显示是个好主意。每个班级都不应该知道我是使用 GUI 还是使用终端,以及它是什么类型的 GUI,因此我无法立即显示消息。在 C++ 中,我在每个类中都创建了一个变量«LastError»。这在 C# 中不是一个好主意吗?