#Windows #服务 #运行时 #检测 #环境 #运行 #检测器

windows-service-detector

一个提供 Windows 服务运行时环境检测的 Rust crate。

1 个不稳定版本

0.1.0 2023 年 6 月 28 日

#32#检测器

Download history • Rust 包仓库 141/week @ 2024-04-22 • Rust 包仓库 162/week @ 2024-04-29 • Rust 包仓库 83/week @ 2024-05-06 • Rust 包仓库 98/week @ 2024-05-13 • Rust 包仓库 195/week @ 2024-05-20 • Rust 包仓库 55/week @ 2024-05-27 • Rust 包仓库 121/week @ 2024-06-03 • Rust 包仓库 64/week @ 2024-06-10 • Rust 包仓库 34/week @ 2024-06-17 • Rust 包仓库 99/week @ 2024-06-24 • Rust 包仓库 41/week @ 2024-07-01 • Rust 包仓库 57/week @ 2024-07-08 • Rust 包仓库 126/week @ 2024-07-15 • Rust 包仓库 88/week @ 2024-07-22 • Rust 包仓库 111/week @ 2024-07-29 • Rust 包仓库 89/week @ 2024-08-05 • Rust 包仓库

415 每月下载量
universal-service 中使用

MIT 许可证

8KB
99

windows-service-detector

一个提供 Windows 服务运行时环境检测的 Rust crate。

查看库文档

用法

查看提供的示例 examples/service.rs 以获取一个完整功能的示例。

TL;DR,在你的 main.rs 中你应该做类似的事情

use windows_service_detector::is_running_as_windows_service;

fn main() {
    if is_running_as_windows_service().unwrap() {
        run_service();
    } else {
        println!("this is not a service");
    }
}

运行示例

为了演示示例二进制文件作为正常命令行程序运行

cargo run --example service

为了演示相同的二进制文件作为 Windows 服务运行,请使用提供的测试脚本 在管理员命令提示符中

.\example-service-test.ps1

开发

此 crate 被认为是功能完整的,因为它的唯一目的是提供 Windows 服务环境检测。

如果你发现一个错误,请通过此存储库的 GitHub 问题跟踪器报告。

依赖项

~128MB
~2M SLoC