44. FAQ o Win API

Q> Как узнать хэндл консольного окна?
A>
 From: PSS ID Number: Q124103

HWND GetConsoleHwnd(void)
{

#define MY_BUFSIZE 1024 

 HWND hwndFound; 
 char pszNewWindowTitle[MY_BUFSIZE];
 char pszOldWindowTitle[MY_BUFSIZE];

//Запоминаем заголовок консоли

 GetConsoleTitle(pszOldWindowTitle, MY_BUFSIZE);

//Делаем уникальную строку из всякой лабуды

 wsprintf(pszNewWindowTitle,"%d/%d",
 GetTickCount(),
 GetCurrentProcessId());
 
//Меняем заголовок на уникальный

 SetConsoleTitle(pszNewWindowTitle);

//Немного подождем

 Sleep(40);

//Находим хэндл

 hwndFound=FindWindow(NULL, pszNewWindowTitle);

//Меняем загловок окна обратно

 SetConsoleTitle(pszOldWindowTitle);
 
 return(hwndFound);
}

2000(c) DM

Электронные Книги по компьютерным программам
На правах рекламы:
Логин
Пароль
Запомнить меня