4.进程_1(GetModuleHandle )

1.随意调整成控制台程序或者窗口程序(配置属性/链接器/系统/子系统)(直接删除该项,或者/SUBSYSTEM:WINDOWS<->/SUSSYSTEM:CONSOLE)

2.GetModuleHandle                                                                       

 1 /********************************************************************
 2     created:    2020/07/08   10:27
 3     filename:     H:\2020-2021\Windows核心编程\Windows核心编程\4.进程\4.进程.cpp
 4     file base:    4.进程
 5     author:        大海
 6     
 7     purpose:    Practice makes perfect.
 8 *********************************************************************/
 9 
10 #include <iostream>
11 #include <windows.h>
12 
13 extern "C" const IMAGE_DOS_HEADER __ImageBase;
14 
15 void DumpModule() {
16     HMODULE hModule = GetModuleHandle(NULL);
17     wprintf(TEXT("with GetModuleHandle(NULL) = 0x%x\r\n"),hModule);
18 
19     wprintf(TEXT("with __ImageBase = 0x%x\r\n"), (HINSTANCE)&__ImageBase);
20     IMAGE_DOS_HEADER DO = __ImageBase;
21 
22     hModule = NULL;
23     GetModuleHandleEx(GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS,(PCTSTR)DumpModule,&hModule);
24 
25     wprintf(TEXT("with GetModuleHandleEx = 0x%x\r\n"), hModule);
26 
27 }
28 int main()
29 {
30     DumpModule();
31     getchar();
32     return 0;
33 }

 

posted @ 2020-07-08 12:15  a1094426901  阅读(189)  评论(0)    收藏  举报