Первый HWND hwnd и есть дескриптор создаваемого окна. Можно понаделать HWND hwnd1 = CreateWindow(... HWND hwnd2 = CreateWindow(... HWND hwnd3 = CreateWindow(... WndProc - это callback фукнкция. Окно работает в ином потоке чем сама программа. Тот поток смотрит что за действия были сделаны и потом посылает сообщение, грубо говоря делает так int num_of_windows = GetNumOfCreatedWindows(); // 3 окна мы сделали for( int i = 0; i < num_of_windows; ++i ){ HWND hWnd = GetCreatedWindowById( i ); if( GetWindowMessage( hWnd ) ){ // если есть какое сообщение WndProc( hWnd, 1, 0, 0 ); // посылаем какое-то сообщение в программу } } ============================= В самой функции можно написать тут hwnd = параметр LONG WINAPI WndProc(HWND hwnd;, UINT Message, WPARAM wparam, LPARAM lparam) { if( hwnd == hWnd1 ) printf( "Это первое окно
" ); if( hwnd == hWnd2 ) printf( "Это второе окно
" ); if( hwnd == hWnd3 ) printf( "Это третье окно
" ); }
" ); if( hwnd == hWnd2 ) printf( "Это второе окно
" ); if( hwnd == hWnd3 ) printf( "Это третье окно
" ); }