EnumWindows 传递自定义参数实例

来源:互联网 发布:淘宝店铺年费 编辑:程序博客网 时间:2024/06/03 16:34
#include <windows.h>HWND Myhwnd[3]; //存放窗口句柄数组BOOL CALLBACK EnumWindowsProc(HWND hwnd, LPARAM lParam){    char *pParam = (char *)lParam;// pParam 就是你传进来的那个参数了,也就是main中的那个Text[128] = { "无标题 - 记事本" };TCHAR caption[200];memset(caption, 0, sizeof(caption));::GetWindowText(hwnd, caption, 200);if(strcmp(caption, pParam)== 0){//查找到一个窗口句柄。   Myhwnd[0]=hwnd; //将找到的第一个句柄存入数组第一个指针里Myhwnd[0];return FALSE; // return FALSE 是指不再继续枚举窗口了。如果你不知道 可以查询msdn     }return TRUE;}int main(int argc, char* argv[]){char Text[128] = { "无标题 - 记事本" };::EnumWindows(EnumWindowsProc, (LPARAM)Text);char strOutput[128];wsprintf(strOutput,"句柄:0x%x", Myhwnd[0]);MessageBox(NULL,strOutput,"Myhwnd",NULL); //输出句柄Myhwndprintf("Hello World!\n");return 0;}

0 0
原创粉丝点击