3个版本
| 0.1.3 | 2022年10月7日 |
|---|---|
| 0.1.2 | 2022年9月30日 |
| 0.1.0 | 2022年2月21日 |
#202 in Windows API
139 每月下载量
在 7 个crate中(通过 winresult)使用
1.5MB
22K SLoC
🦀 winresult - windows结果代码 🦀
Windows结果代码的调试友好类型。
为什么?
-
u32错误码在使用dbg!(...)时很麻烦。winresult有出色的Debug实现。 -
u32错误码在调试器中查看时很麻烦。winresult有出色的*.natvis文件。使用natvis-pdbs! -
在
match中使用ERROR_WHATEVER只是一个警告。ERROR::WHATEVER是一个硬错误。
(我仍然会用#![deny)。) -
ERROR_INVALID_FUNCTION==S_FALSE(==1)。太弱了! -
ERROR_FILE_NOT_FOUND(2)是一团糟。一个函数或GetLastError可能会返回标签 值 备注 ERROR_FILE_NOT_FOUND0x00000002不是 HRESULT(应该是“成功的”)HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND)0x80070002hresult.info "错误地" 将 ERROR_*标识为以下内容NTSTATUS_FROM_WIN32(ERROR_FILE_NOT_FOUND)0xC0070002不知道 NtStatus值被频繁地推入GetLastError,但我已经见过更奇怪的情况D3D10_ERROR_FILE_NOT_FOUND0x88790002不同的设施,相同的代码 D3D11_ERROR_FILE_NOT_FOUND0x887C0002不同的设施,相同的代码
许可证
根据您的选择,许可协议可以是以下之一
- Apache License, Version 2.0 (LICENSE-APACHE 或 https://apache.ac.cn/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT 或 https://open-source.org.cn/licenses/MIT)
。
贡献
除非您明确声明,否则根据 Apache-2.0 许可证定义的任何有意提交以包含在作品中的贡献,都应以上述方式双许可,而不附加任何额外条款或条件。
依赖关系
~0.4–0.9MB
~19K SLoC