1.1 KiB
1.1 KiB
screen_ds_once.c - 显示器信息单次查询程序
概述
screen_ds.c的简化版本,仅执行一次显示器信息查询并输出结果后退出。适用于需要快速获取当前显示器配置的场景。
与screen_ds.c的区别
| 特性 | screen_ds | screen_ds_once |
|---|---|---|
| 执行模式 | 持续监控 | 单次查询 |
| 事件监听 | 有 | 无 |
| 退出方式 | Ctrl+C | 自动退出 |
工作原理
- 打开X显示连接
- 查询RandR扩展是否可用
- 获取所有已连接显示器信息
- 输出到文件或标准输出
- 释放资源并退出
数据结构
与screen_ds.c相同:
typedef struct {
char* output_name;
int width, height;
int x, y;
int rotation;
} MonitorInfo;
输出格式
HDMI-1|1920x1080|0x0|N
关键函数
| 函数 | 功能 |
|---|---|
get_monitor_info() |
获取显示器信息 |
output_monitor_info() |
输出信息 |
rotation_to_char() |
旋转方向编码转换 |
调用方式
./screen_ds_once [输出文件路径]
依赖
- X11 + Xrandr扩展