Files
anit-cheat/Anit-Cheat_EXE/server_palpit.cpp
T
2026-07-28 15:11:47 +08:00

63 lines
974 B
C++

#include "server_palpit.h"
#include "Mapping.h"
namespace server_palpit
{
DWORD WINAPI palpit_thread(LPVOID parmar)
{
while (true) {
auto mapping_data = reinterpret_cast<PMAPPING_USER_MEMORY>(parmar);
if (!mapping_data->server_pid)
mapping_data->server_pid = GetCurrentProcessId();
//
//尝试打开客户端进程
//
static int fail_index = 0;
static HANDLE hProcess = 0;
auto client_pid = mapping_data->client_pid;
if (hProcess == NULL)
{
if (fail_index > 3)
exit(0);
hProcess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, client_pid);
fail_index++;
Sleep(1000);
continue;
}
//
//监控客户端进程是否退出
//
DWORD exitCode;
if (GetExitCodeProcess(hProcess, &exitCode)) {
if (exitCode != STILL_ACTIVE) {
exit(0);
}
}
Sleep(1000);
}
return 0;
}
auto create_palpit_thread(LPVOID parmar) -> void
{
CreateThread(nullptr, 0, palpit_thread, parmar, 0, nullptr);
}
}