6 个版本 (1 个稳定版)
1.0.0 | 2023年10月21日 |
---|---|
0.1.2 | 2023年10月3日 |
0.1.0 | 2023年9月26日 |
0.0.2 | 2023年9月22日 |
#10 in #目录
每月下载 39 次
160KB
1K SLoC
msuc-rs
本软件包提供了一个 Rust 客户端接口,用于访问 微软更新目录。它支持搜索目录并检索特定更新的详细信息。
文档
请参阅 docs.rs 页面的文档。
用法
此软件包位于 crates.io,您可以通过将 msuc
添加到项目 Cargo.toml
文件中的依赖项来使用它。
[dependencies]
msuc = "1.0.0"
示例
搜索更新目录
use msuc::prelude::*;
#[tokio::main]
async fn main() {
let client = MsucClient::new();
let search = client.search("MS08-067");
loop {
match search.next().await {
Ok(Some(results)) => {
for r in results {
println!("title: {}", r.title);
println!("id: {}", r.id);
println!("kb: {}", r.kb);
println!("product: {}", r.product);
println!("classification: {}", r.classification);
println!("last modified: {}", r.last_modified);
println!("version: {}", r.version.unwrap_or("".to_string()));
println!("size: {}", r.size);
println!();
}
},
Ok(None) => break,
Err(e) => println!("error: {}", e),
}
}
}
检索更新详细信息
use msuc::prelude::*;
#[tokio::main]
async fn main() {
let client = MsucClient::new();
// MS08-067: KB958644
let details = client.details("9602ca4a-80a7-4d73-94c3-0088fcb5bce3").await;
match details {
Ok(d) => {
println!("title: {}", d.title);
println!("id: {}", d.id);
println!("kb: {}", d.kb);
println!("classification: {}", d.classification);
println!("last modified: {}", d.last_modified);
println!("size: {}", d.size);
println!("description: {}", d.description);
println!("architecture: {}", d.architecture);
println!("supported products: {}", d.supported_products);
println!("supported languages: {}", d.supported_languages);
println!("msrc number: {}", d.msrc_number);
println!("msrc severity: {}", d.msrc_severity);
println!("info url: {}", d.info_url);
println!("support url: {}", d.support_url);
println!("reboot behavior: {}", d.reboot_behavior);
println!("requires user input: {}", d.requires_user_input);
println!("is exclusive install: {}", d.is_exclusive_install);
println!("requires network connectivity: {}", d.requires_network_connectivity);
println!("uninstall notes: {}", d.uninstall_notes);
println!("uninstall steps: {}", d.uninstall_steps);
println!("supersedes: {}", d.supersedes);
println!("superseded by: {}", d.superseded_by);
},
Err(e) => println!("error: {}", e),
}
}
软件包功能
以下软件包功能可用
default
:async/await 支持blocking
:阻塞支持
注意:
blocking
功能与default
功能互斥。
依赖项
~7–21MB
~320K SLoC