Files
SimpleRemoter/server/2015Remote/ServerSessionMonitor.h

52 lines
1.1 KiB
C
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#ifndef SERVER_SESSION_MONITOR_H
#define SERVER_SESSION_MONITOR_H
#include <windows.h>
#include <wtsapi32.h>
#ifdef __cplusplus
extern "C" {
#endif
#pragma comment(lib, "wtsapi32.lib")
// GUI进程信息
typedef struct ServerAgentProcessInfo {
DWORD processId;
DWORD sessionId;
HANDLE hProcess;
} ServerAgentProcessInfo;
// GUI进程数组动态数组
typedef struct ServerAgentProcessArray {
ServerAgentProcessInfo* items;
size_t count;
size_t capacity;
} ServerAgentProcessArray;
// 会话监控器结构
typedef struct ServerSessionMonitor {
HANDLE monitorThread;
BOOL running;
CRITICAL_SECTION csProcessList;
ServerAgentProcessArray agentProcesses;
} ServerSessionMonitor;
// 初始化会话监控器
void ServerSessionMonitor_Init(ServerSessionMonitor* self);
// 清理会话监控器资源
void ServerSessionMonitor_Cleanup(ServerSessionMonitor* self);
// 启动会话监控
BOOL ServerSessionMonitor_Start(ServerSessionMonitor* self);
// 停止会话监控
void ServerSessionMonitor_Stop(ServerSessionMonitor* self);
#ifdef __cplusplus
}
#endif
#endif /* SERVER_SESSION_MONITOR_H */