0x800a1421 HRESULT是什么意思?
What is the meaning of 0x800a1421 HRESULT?
我有一个用c++编写的dll。它的主要目的是通过OLE调用Word上的方法。我尝试调用一个方法" savea ":
HRESULT hr;
szFunction = OLESTR("SaveAs");
hr = doc->GetIDsOfNames(IID_NULL, &szFunction, 1,
LOCALE_USER_DEFAULT,
&dispid_Cap);
hr = doc->Invoke(dispid_Cap, IID_NULL,
LOCALE_USER_DEFAULT, DISPATCH_METHOD,
&dpCap, NULL, NULL, NULL);
它失败了,我不知道为什么。hr的值为-2146823135。我把它转换成十六进制:
sprintf(hex_buff, "%x", (unsigned int)hr);
0x800a1421
我试图找出这段代码对这个程序的含义:http://www.microsoft.com/en-us/download/details.aspx?id=985但结果是:
as an HRESULT: Severity: FAILURE (1), Facility: 0xa, Code 0x1421
NOT FOUND: 800a1421
这是什么意思?我应该如何找出我的方法失败的原因?
无法诊断错误的一个重要原因是走了太多捷径。您正在为IDispatch::Invoke()的pExcepInfo参数传递NULL。这对于IDispatch来说是没问题的,它基本上意味着"不用麻烦告诉我你对异常的了解,我会自己从错误代码中整理出来"您将错过诸如错误的文本描述和记录它的帮助文件之类的好东西。如果可用。当你问这个问题时,显然你不想走这种捷径。
无论如何,您仍然可以从异常代码中逆向工程问题。设施0x0a是为OLE自动化应用程序保留的,错误代码是特定于应用程序的。它在"Word错误5153"中变为0x1421。把它放在谷歌查询中,第二个点击会给你一个链接,让你找到一个知道错误5153是什么意思的人。
您正在尝试覆盖别人打开的文件。很常见的不幸。
修复你的代码,你会想要显示错误描述给一个人,这样他们就可以照顾它。
关于0x800a1421
的信息来自'HR Plus'工具:
- 错误类型:OLE HRESULT
- 错误Facility: FACILITY_CONTROL
0x0000000A
- 严重性:SEVERITY_ERROR
0x00000001
- 代码:
0x00001421
和0x00001421
从'错误查找'工具:控件ID没有找到。
相关文章:
- 这个语法std::class<>{}(arg1, arg2) 在C++中是什么意思?
- 标准 N3337 5.2.10 第 7 条中的C++"类型"是什么意思?
- "类模板示例<int>;"语句对 C++11 是什么意思?
- 线应该是什么意思
- "CID"在AT+HTTPPARA= "CID" ,1中是什么意思
- 表达式"b=(b-x)&x"是什么意思?
- 这个表达是什么意思?
- 此代码验证公式是什么意思?
- 跟踪日志中的T.11803()是什么意思?
- 这个额外的关键字在这个 c++ 类声明中是什么意思?
- * 和 ** 在 C++ 函数声明中是什么意思?
- _T("xyz")是什么意思?
- #define Dbg(fmt,..) (0) 是什么意思? 警告:表达式无效
- 这行代码到底是什么意思?
- 当我们说在执行程序时将操作系统的控制权传递给main()函数时,我们的意思是什么
- 这句话在c++中的意思是什么
- 这个typedef的意思是什么
- 这句话的意思是什么
- 意思是什么
- 这个句法的意思是什么?