Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Системное программирование и WinAPI > Sendmessage во фрейм


Автор: castor 10.3.2009, 09:53
Здравствуйте, задача такая, нужно отправить текст в окно child и получить ответ, я делаю такое с notepad все получается а вот на MDI child (frame) окно никак, помогите плиз. Вот код мой.



Код

   HWND hwnd, hwndchild; int i;
   DWORD pid;
   LPCTSTR msg = _T("test"); 
    
   hwnd = ::FindWindow(NULL, TEXT("Notepad"));
   
   if (hwnd != NULL) {
      hwndchild =::FindWindowEx(hwnd,NULL,TEXT("Edit"),NULL); 
      
      if (hwndchild != NULL) { 
         for(i = 0; i < _tcslen(msg); i++) { 
             ::SendMessage(hwnd, WM_CHAR, msg[i], 0); 
         } 
        
       char text[TEXT_LENGTH+1];
       ::SendMessage(hwnd, WM_GETTEXT, (WPARAM)TEXT_LENGTH, (LPARAM)text);
        
       printf(text);

       return EXIT_SUCCESS; 
      } 
   }    
      
   _tprintf(TEXT("fail\n"));    
   return EXIT_FAILURE; 


Автор: GremlinProg 10.3.2009, 19:51
Цитата(castor @  10.3.2009,  11:53 Найти цитируемый пост)
а вот на MDI child (frame) окно никак

MDI child и frame - это разные окна, есть еще client, на котором располагаются MDI child'ы
показывай обращение к MDI

Автор: castor 11.3.2009, 09:53
Извини ошибся, скорее не MDI окно а child (popup)

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)