32次重大发布
0.33.0 | 2024年8月14日 |
---|---|
0.32.0 | 2024年7月24日 |
0.31.0 | 2024年6月12日 |
0.29.0 | 2024年3月1日 |
0.7.0 | 2021年11月9日 |
#21 in Windows API
81,515每月下载量
用于203个crate (13个直接使用)
33MB
45K SLoC
webview2-com
此crate实现了对WebView2 COM API的Rust绑定,以及构建独立GUI应用程序托管WebView2所必需的几个重要的Win32 API。这些绑定由Windows crate在webview2-com-sys中生成。
入门指南
在您的Cargo.toml
中包含对webview2-com
的引用
[dependencies]
webview2-com = "0.33"
查看文档或查看sample.rs示例(改编自microsoft/windows-samples-rs)以获取更多信息。
安全性
大多数绑定都透明地从webview2-com-sys
重新导出,并且它们仍然标记为unsafe
。与围绕-sys
crate的典型惯用Rust crate不同,此crate的重点是编写尽可能少的手动包装代码。这样,webview2-com
可以投影100%的WebView2 COM API,但缺点是您需要将大多数使用包裹在unsafe
块或函数中。
便利类型
此crate添加的大多数代码由实现回调和设置选项所需的COM接口的便利类型组成
- callback.rs:实现了WebView2使用的所有事件接收器处理程序接口。
- options.rs:实现了
ICoreWebView2EnvironmentOptions...
接口,这些接口会传递给CreateCoreWebView2EnvironmentWithOptions
,以便在需要自定义环境时使用。结构体CoreWebView2EnvironmentOptions
具有对所有支持字段的公共访问器,使用Rust类型,因此您不需要使用单独的ICoreWebView2EnvironmentOptions...
COM接口来初始化或检索它们。
还有一些处理PWSTR
输入/输出参数的实用工具,可能很有用。
- pwstr.rs:包括
string_from_pcwstr
、take_pwstr
和pwstr_from_str
。
Windows元数据
Windows crate需要描述API的Windows元数据(winmd
)文件。本crate中使用的文件是由webview2-win32md项目生成的。本crate需要它来使用来自Windows crate的#[implement]
宏。
依赖项
128MB
~2M SLoC