Advertisement
yorath

TLS callback

May 14th, 2013
114
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.59 KB | None | 0 0
  1. #include <Windows.h>
  2. #include <stdio.h>
  3.  
  4. VOID NTAPI MyCallback(PVOID handle, DWORD reason, PVOID resv);
  5.  
  6. #pragma data_seg(".CRT$XLB")
  7. PIMAGE_TLS_CALLBACK tls_entry = MyCallback;
  8. #pragma data_seg()
  9.  
  10. #pragma comment(linker, "/INCLUDE:__tls_used")
  11. #pragma comment(linker, "/INCLUDE:_tls_entry")
  12.  
  13.  
  14. VOID NTAPI MyCallback(PVOID handle, DWORD reason, PVOID resv)
  15. {
  16.     if (reason == DLL_PROCESS_ATTACH) {
  17.         printf("DLL_PROCESS_ATTACH\n");
  18.     } else if (reason == DLL_PROCESS_DETACH) {
  19.         printf("DLL_PROCESS_DETACH\n");
  20.     }
  21. }
  22.  
  23. int main() {
  24.     printf("main\n");
  25.     return 0;
  26. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement