#include <windows.h>
#include <iostream>
int main() {
HANDLE hProcess = GetCurrentProcess();
DWORD dwProcessId = GetCurrentProcessId();
std::cout << "Process ID: " << dwProcessId << std::endl;
// ydzk
SetBreakpoint(hProcess, 0); // 在当前进程的第一个模块中设置断点
while (true) {
if (CheckRemoteDebuggerPresent(hProcess, &bIsDebuggerPresent)) {
if (bIsDebuggerPresent) {
std::cout << "Debugger detected!" << std::endl;
break; // 检测到调试器,退出循环
}
} else {
std::cout << "Error checking for debugger." << std::endl;
}
Sleep(1000); // 等待1秒后再次检查
}
// 这里可以添加其他的逻辑或操作...
return 0;
}
ydzka
于 2024-01-03 22:01:56 首次发布