例如,我已经知道notepad.exe的窗口句柄,怎么通过HWND,得到“notepad.exe”这个名字?
我是枚举打开的窗口得到的句柄,得到后想判断是不是我想要的程序的窗口。
谢谢打侠们!
我是枚举打开的窗口得到的句柄,得到后想判断是不是我想要的程序的窗口。
谢谢打侠们!
解决方案 »
- 回车键和空格键对界面的影响问题
- SetProcessAffinityMask 第二个参数的掩码是如何得到的?
- executable for debug session误操作问题
- 请问一个关于 IHTMLDocument4 的 createEventObject 的用法问题,谢谢
- 关于兼容dc的问题
- 关于64位下XP使用VirtualProtect 的疑惑
- 如何在VC程序中连接VB代码?即用VB做好了界面,用VC如何连接上?
- 关于try catch的使用问题
- 如何写循环语句。取得例如12345678901---12345678909之间的每个字符串。内祥.大家帮忙想想好的方法。有没有>10位的数字形式?
- 关于*.mak文件的小Case
- 关于制作专用格式的软件的问题!
- 有关CTreeCtrl拖拽的问题,请教!
HMODULE hModule, // handle to module
LPTSTR lpFilename, // path buffer
DWORD nSize // size of buffer
);或发送WM_GETWINDOWTEXT消息
#include <tlhelp32.h>
#include <stdio.h>DWORD dwProcessID;
GetWindowThreadProcessId(hWnd, &dwProcessID);
MODULEENTRY32 me32 = {0};
HANDLE hModuleSnap = CreateToolhelp32Snapshot(TH32CS_SNAPMODULE, dwPID);
// Fill the size of the structure before using it. me32.dwSize = sizeof(MODULEENTRY32);
Module32First(hModuleSnap, &me32);
printf( "Full Path\t\t%s\n\n", me32.szExePath);
char AppName[256];
::SendMessage(hWnd, WM_GETTEXT,256, (LPARAM)AppName);
//hWnd 为楼主获得的窗口句柄
WM_GETWINDOWTEXT=====》
WM_GETTEXT
=>
OpenProcess
=>
GetModuleFIleName
到msdn看这几个函数CreateToolhelp32Snapshot,Process32First,Process32Next。