HRESULT是什么类型
HRESULT 是一种简单的数据类型,可以判断函数执行的结果。HRESULT 常被用作COM调用的返回值。充分利用HRESULT返回信息可以帮助提高我们的代码质量,提供程序的健壮性。
HRESULT 其实是一个类型定义:typedef LONG HRESULT ;
1.HRESULT 返回值有哪些、及其含义:
S_OK 操作成功 0x00000000S_FALSE 函数调用成功 #define S_FALSE ((HRESULT)1L)E_UNEXPECTED 意外的失败 0x8000FFFFE_NOTIMPL 未实现 0x80004001E_OUTOFMEMORY 未能分配所需的内存 0x8007000EE_INVALIDARG 一个或多个参数无效 0x80070057E_NOINTERFACE 不支持此接口 0x80004002E_POINTER 无效指针 0x80004003E_HANDLE 无效句柄 0x80070006E_ABORT 操作已中止 0x80004004E_FAIL 未指定的失败 0x80004005E_ACCESSDENIED 一般的访问被拒绝错误 0x80070005
2.HRESULT使用方法:
其中最常用的是S_OK,S_FALSE,E_FAIL.S_OK 操作成功,调用成功。需要用SUCCEEDED(hr) 来判断。其值为 0#define SUCCEEDED(hr) (((HRESULT)(hr)) >= 0)S_FALSE 函数调用成功,可以处理有问题。需要用(hr == S_FALSE)来判断。其值为 1E_FAIL 未指定的失败,一般来讲是函数调用错误。需要用(hr == E_FAIL) 来判断。从以上分析可以看出,FAILED 泛指一切错误。#define FAILED(hr) (((HRESULT)(hr)) < 0)
HRESULT是什么类型的更多相关文章
- 错误信息:内存位置访问无效。 (Exception from HRESULT: 0x800703E6)
错误提示: 错误信息:内存位置访问无效. (Exception from HRESULT: 0x800703E6) 异常类型:System.BadImageFormatException 堆栈跟踪: ...
- Visual Studio高级调试技巧
1. 设置软件断点,运行到目标位置启动调试器 方法①:使用汇编指令(注:x64 c++不支持嵌入汇编) _asm 方法②:编译器提供的方法 __debugbreak(); 方法③:使用windows ...
- gtest简短,简单易用
gtest它是一种跨平台的(Liunx.Mac OS X.Windows.Cygwin.Windows CE and Symbian)的C++测试框架.有google该公司宣布. gtest台上为编写 ...
- gtest简介及简单使用
本文摘自 gtest简介及简单使用 ,在此感谢作者的分享. 具体使用教程 _______________________________________________________________ ...
- c语言getipaddrtable获得ip地址与sendArp获得mac地址以及一些字节序问题记录
https://docs.microsoft.com/zh-cn/windows/win32/api/iphlpapi/nf-iphlpapi-getipaddrtable msdn,有很多c的源码还 ...
- 无法将类型为“Excel.ApplicationClass”的 COM 对象强制转换为接口类 型“Excel._Application”。此操作失败的原因是对 IID 为“{000208D5 -0000-0000-C000-000000000046}”的接口的 COM 组件调用 QueryInterface 因以下错误而失败: 加载类型库/DLL 时出错。 (异常来 自 HRESULT:
无法将类型为“Excel.ApplicationClass”的 COM 对象强制转换为接口类 型“Excel._Application”.此操作失败的原因是对 IID 为“{000208D5 -000 ...
- 格式太旧或是类型库无效。 (Exception from HRESULT: 0x80028019 (TYPE_E_UNSUPFORMAT))
错误提示信息 格式太旧或是类型库无效. (Exception from HRESULT: 0x80028019 (TYPE_E_UNSUPFORMAT)) . Old format or invali ...
- "格式太旧或是类型库无效。 (异常来自 HRESULT:0x80028019 (TYPE_E_UNSUPFORMAT))"
错误提示内容: “System.Runtime.InteropServices.COMException (0x80028019): 格式太旧或是类型库无效. (异常来自 HRESULT:0x8002 ...
- 无法将类型为“Microsoft.Office.Interop.Word.ApplicationClass”的 COM 对象强制转换为接口类型“Microsoft.Office.Interop.Word._Application”。
无法将类型为“Microsoft.Office.Interop.Word.ApplicationClass”的 COM 对象强制转换为接口类型“Microsoft.Office.Interop.Wor ...
随机推荐
- WPF自定义样式篇-DataGrid
WPF自定义样式篇-DataGrid 先上效果图: 样式: <!--DataGrid样式--> <Style TargetType="DataGrid"& ...
- python 安装 pip ,并使用pip 安装 filetype
闲话少说,直接上操作. python版本为2.7.6 可以直接到官网下载,我也提供一个百度云的下载地址 https://pan.baidu.com/s/1kWPXG8Z 这个是window版本,lin ...
- Python中queue消息队列模块
from queue import Queue from queue import PriorityQueue print("Queue类实现了一个基本的先进先出(FIFO)容器,使用put ...
- tomcat的跳转与日志
1.跳转的关键性配置; 2. 日志的配置 1.跳转的关键性配置 当用户访问http://www.a.com/test时,会跳转打开/var/www/html目录下的页面 关键性配置如下: [root@ ...
- MYSQL学习笔记——数据类型
mysql的数据类型可以分为三大类,分别是数值数据类型.字符串数据类型以及日期时间数据类型. 数值数据类型 ...
- python如何查看内存占用空间
我们如何查看变量占用了多少内存空间呢 首先我们引用sys模块,在使用getsizeof()方法 import sys L = [x for x in range(10000)] print(sys.g ...
- 2018-10-01-weekly
Algorithm 77. 组合 What 给定两个整数 n 和 k,返回 1 ... n 中所有可能的 k 个数的组合. How 利用递归的思想,当凑够k个数时,就回退回去,remove掉一个数,在 ...
- Wannafly挑战赛27 D绿魔法师
链接Wannafly挑战赛27 D绿魔法师 一个空的可重集合\(S\),\(n\)次操作,每次操作给出\(x,k,p\),要求支持下列操作: 1.在\(S\)中加入\(x\). 2.求\[\sum_{ ...
- php substr()函数 语法
php substr()函数 语法 作用:截取字符串 语法:substr(string,start,length)大理石平台 参数: 参数 描述 string 必需.规定要返回其中一部分的字符串. s ...
- [tyvj]P1939玉蟾宫[单调栈]
[tyvj]P1939 玉蟾宫 ——!x^n+y^n=z^n 背景 有一天,小猫rainbow和freda来到了湘西张家界的天门山玉蟾宫,玉蟾宫宫主蓝兔盛情地款待了它们,并赐予它们一片土地. 描述 这 ...