5 个不稳定版本

0.2.0 2024 年 7 月 3 日
0.1.2 2024 年 6 月 7 日
0.1.1 2024 年 4 月 12 日
0.1.0 2024 年 2 月 22 日
0.0.0 2024 年 2 月 2 日

Windows API 中排名 #148

Download history 54683/week @ 2024-05-04 67823/week @ 2024-05-11 75755/week @ 2024-05-18 73944/week @ 2024-05-25 137141/week @ 2024-06-01 165303/week @ 2024-06-08 149229/week @ 2024-06-15 170797/week @ 2024-06-22 106435/week @ 2024-06-29 97800/week @ 2024-07-06 96576/week @ 2024-07-13 111601/week @ 2024-07-20 122408/week @ 2024-07-27 129929/week @ 2024-08-03 148692/week @ 2024-08-10 258031/week @ 2024-08-17

每月下载量 680,540
4,587 个crate中使用(5个直接使用)

MIT/Apache

32KB
645 行代码(不含注释)

Windows 错误处理

“windows-result” crate 提供了高效的 Windows 错误处理和传播,支持 Win32、COM 和 WinRT API。

首先将以下内容添加到您的 Cargo.toml 文件中

[dependencies.windows-result]
version = "0.2"

根据需要使用 HRESULTError 和专门的 Result 类型

use windows_result::*;

const S_OK: HRESULT = HRESULT(0);
const ERROR_CANCELLED: u32 = 1223;
const E_CANCELLED: HRESULT = HRESULT::from_win32(ERROR_CANCELLED);

fn main() -> Result<()> {
    S_OK.ok()?;
    let e = Error::new(E_CANCELLED, "test message");
    assert_eq!(e.code(), E_CANCELLED);
    assert_eq!(e.message(), "test message");
    Ok(())
}

lib.rs:

在此了解有关 Rust for Windows 的更多信息:https://github.com/microsoft/windows-rs

依赖项

~0–5MB