winrt::hresult_error结构 (C++/WinRT)
表示 HRESULT 错误代码的类型。
语法
struct hresult_error
要求
支持的最低 SDK:Windows SDK 版本 10.0.17134.0 (Windows 10版本 1803)
命名空间: winrt
标头: %WindowsSdkDir%IncludeWindowsTargetPlatformVersion<>\cppwinrt\winrt\base.h (默认包含)
构造函数
构造函数 | 说明 |
---|---|
hresult_error::hresult_error 构造函数 | 使用输入数据的副本初始化 hresult_error 结构的新实例。 |
类型
构造函数 | 说明 |
---|---|
hresult_error::from_abi_t 类型 | hresult_error::from_abi静态数据成员的类型。 |
静态数据成员
函数 | 说明 |
---|---|
hresult_error::from_abi静态数据成员 | 类型 为 hresult_error::from_abi_t 的实例,该实例可以传递给 hresult_error ( 的构造函数或派生类型) ,以指示构造函数应尝试检索受限的错误信息。 |
成员函数
函数 | 说明 |
---|---|
hresult_error::code 函数 | 检索 由hresult_error 对象表示的错误的代码。 |
hresult_error::message 函数 | 检索 由hresult_error 对象表示的错误的消息。 |
hresult_error::to_abi 函数 | 设置当前线程的受限错误信息对象,并返回 由hresult_error 对象表示的错误的代码。 |
hresult_error::try_as 函数 | 如果支持,则返回请求的接口。 返回 nullptr ,或者 false ,如果不是。 |
成员运算符
操作员 | 说明 |
---|---|
hresult_error::operator= (赋值运算符) | 将值分配给 hresult_error 对象。 |
hresult_error::hresult_error 构造函数
使用输入数据的副本初始化 hresult_error 结构的新实例。
语法
hresult_error() noexcept;
hresult_error(hresult_error&&);
hresult_error(hresult_error const& other);
explicit hresult_error(HRESULT const code) noexcept;
hresult_error(HRESULT const code, winrt::hstring const& message, ::IUnknown* object = nullptr) noexcept;
hresult_error(HRESULT const code, winrt::hresult_error::from_abi_t) noexcept;
parameters
other
另一个初始化hresult_error对象的hresult_error。
code
用于初始化 hresult_error 对象的 HRESULT 代码。
message
一个信息性字符串,可帮助开发人员更正报告的错误条件。
object
一个错误对象,用于存储有关错误的额外信息。 错误对象应是跨流程的单元敏捷、进程内和封送值封送对象。 它应在必要时实现 ILanguageExceptionStackBackTrace 和 ILanguageExceptionTransform 。 请参阅 RoOriginateLanguageException。
hresult_error::code 函数
检索 由hresult_error 对象表示的错误的代码。
语法
winrt::hresult code() const noexcept;
返回值
winrt::hresult 错误代码。
hresult_error::from_abi静态数据成员
类型 为 hresult_error::from_abi_t 的实例,该实例可以传递给 hresult_error ( 的构造函数或派生类型) ,以指示构造函数应尝试检索受限的错误信息。
语法
static constexpr winrt::hresult_error::from_abi_t from_abi{};
hresult_error::from_abi_t 类型
hresult_error::from_abi静态数据成员的类型。
语法
struct from_abi_t {};
hresult_error::message 函数
检索 由hresult_error 对象表示的错误的消息。
语法
winrt::hstring message() const noexcept;
返回值
包含错误混乱的 winrt::hstring 。
hresult_error::operator= (赋值运算符)
将值分配给 hresult_error 对象。
语法
winrt::hresult_error& operator=(winrt::hresult_error&&);
winrt::hresult_error& operator=(winrt::hresult_error const& other) noexcept;
parameters
other
要分配给hresult_error对象的hresult_error值。
返回值
对 hresult_error 对象的引用。
hresult_error::to_abi 函数
设置当前线程的受限错误信息对象,并返回 由hresult_error 对象表示的错误的代码。
语法
HRESULT to_abi() const noexcept;
返回值
HRESULT 错误代码。
hresult_error::try_as 函数
如果支持,则返回请求的接口。 如果不是,则 nullptr
返回。 如果要查询不需要传回调用方接口,则此函数非常有用。 例如,可以检索 IRestrictedErrorInfo 来访问 由hresult_error 对象表示的错误的受限错误信息。
语法
template <typename To> auto try_as() const noexcept;
模板参数
typename To
请求的接口的类型。
parameters
to
对接收请求接口的值的引用。
返回值
winrt::com_ptr引用请求的接口,或由 C++/WinRT 声明或第三方) 所请求接口的强类型智能指针,否则nullptr
为请求的 (接口。