Skip to content

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SleepOnLan

一个基于Rust语言的远程关机/休眠工具,类似WakeOnLan但功能相反,用于通过TCP协议远程控制计算机关机或休眠。

功能特性

  • 远程关机:通过TCP命令执行关机操作
  • 远程休眠:通过TCP命令执行休眠操作
  • 状态查询:返回系统运行状态信息
  • TCP协议:使用可靠的TCP协议进行通信
  • 多线程处理:支持同时处理多个客户端连接

技术实现

  • 语言:Rust
  • 网络:TCP服务器
  • 系统调用:Windows API
    • ExitWindowsEx:执行关机操作
    • SetSuspendState:执行休眠操作

安装与运行

前提条件

  • Rust开发环境
  • Windows操作系统

编译项目

cargo build

运行服务

cargo run

服务启动后会监听端口9999。

使用方法

通过TCP连接到服务端口(默认9999),发送以下命令:

  • shutdown:执行关机操作
  • sleep:执行休眠操作
  • status:查询系统状态

示例

使用Telnet连接:

telnet localhost 9999

然后输入命令:

status

服务会返回系统状态信息。

命令说明

命令 功能 响应
shutdown 执行关机操作 正在关机...
sleep 执行休眠操作 正在休眠...
status 查询系统状态 系统运行中
当前时间戳: [时间戳]
SleepOnLan服务正常运行

项目结构

sleeponlan/
├── src/
│   └── main.rs       # 主程序
├── Cargo.toml        # 项目配置
└── README.md         # 项目说明

注意事项

  • 运行此服务需要管理员权限
  • 默认监听所有网络接口(0.0.0.0),在生产环境中建议修改为特定IP
  • 本项目仅支持Windows操作系统
  • 第一版未实现身份验证功能,建议在可信网络环境中使用

贡献

欢迎提交Issue和Pull Request!

许可证

MIT License

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages