c++ - 有没有办法使用 win API 获取 HRESULT 值的字符串表示形式?

标签 c++ windows winapi clr hresult

win API中有没有可以提取HRESULT值的字符串表示的函数?

问题在于并非所有返回值都记录在 MSDN 中,例如 ExecuteInDefaultAppDomain()没有记录函数返回“0x80070002 - 系统找不到指定的文件。”但是,确实如此!因此,我想知道是否有一个函数可以在普通情况下使用。

最佳答案

您可以使用 _com_error :

_com_error err(hr);
LPCTSTR errMsg = err.ErrorMessage();

如果您出于某种原因不想使用 _com_error,您仍然可以查看它的源代码,看看它是如何完成的。

不要忘记包含 header comdef.h

关于c++ - 有没有办法使用 win API 获取 HRESULT 值的字符串表示形式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7008047/

相关文章:

c++ - 什么时候我应该选择 boost spirit attr_cast 而不是语义 Action

c++ - QList 元素的段错误

windows - 使用py2exe时如何包含ui和图像文件?

c# - 如何向 ASP.NET 3.5 图表控件添加图例?

c - 链接期间 WINAPI 出现奇怪的错误

c++ - 从 int 转换为 enum

c++ - 作为对象传递给 MyDataStream 流(argv [1])的输入数据文件的格式应该是什么

windows - WIX安装条件

c++ - 串口ReadFile接收重复数据

c++ - 从编辑控件中获取文本(纯 Win32 API)