#include <windows.h>
#pragma comment(linker, "/INCLUDE:__tls_used")
#pragma comment(lib, "User32.lib")
void NTAPI TLS_CALLBACK(PVOID DllHandle, DWORD Reason, PVOID Reserved)
{
if (IsDebuggerPresent())
{
MessageBoxA(NULL, "Debugger Detected!", "TLS Callback", MB_OK);
//ExitProcess(1);
}
else
{
MessageBoxA(NULL, "TLS_CALLBACK", "TLS Callback", MB_OK);
}
}
void NTAPI TLS_CALLBACK_2(PVOID DllHandle, DWORD Reason, PVOID Reserved)
{
MessageBoxA(NULL, "TLS_CALLBACK_2", "TLS Callback", MB_OK);
}
#pragma data_seg(".CRT$XLX")
PIMAGE_TLS_CALLBACK pTLS_CALLBACKs[] = { TLS_CALLBACK, TLS_CALLBACK_2, 0 };
#pragma data_seg()
int main(void)
{
MessageBoxA(NULL, "Hello :)", "main()", MB_OK);
return 0;
}
TLS回调
最新推荐文章于 2024-03-15 10:32:01 发布