首页 > 代码库 > HRESULT 的判断

HRESULT 的判断

对一个函数调用完成后,如果我们要判断其成功或者失败,不能简单地把返回值与S_OK或S_FALSE进行比较,因为函数成功执行之后,可能有不同的成功返回值,函数执行失败之后,也会有不同的失败返回值,所以,我们应该使用SUCCEEDED或FAILED宏来对HRESULT类型的结果值作出成功或失败的判断。

例子:

1     hr = CoCreateInstance(CLSID_MyStringFactory, NULL, CLSCTX_INPROC_SERVER, IID_IMyString, (void**)&pMyString);2     if (FAILED(hr))3     {4         MessageBox(NULL, "创建 IMyString 失败!", NULL, NULL);5         return 0;6     }

 

HRESULT 的判断