Показать сообщение отдельно
  #2  
Старый 02.04.2009, 12:57
Nyctos Kasignete Nyctos Kasignete вне форума
Активный
 
Регистрация: 29.03.2009
Сообщения: 300
Репутация: 94
По умолчанию

Win32 API вам в руки.
Допустим, есть на чужом окне кнопка, подписанная как 'btn'. Вашему приложению необходимо найти дескриптор чужого окна (handle) и затем — дескриптор кнопки 'btn', которая тоже является (дочерним) окном по сути. Поиск окна по заголовку можно осуществлять с помощью функций FindWindow и FindWindowEx.
Вот, например, такой код позволит вам нажать кнопку 'btn', расположенную в чужом окне с заголовком, скажем, 'other form'.
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
  OtherWnd: HWND;
  BtnWnd: HWND;
begin
  OtherWnd := FindWindow(nil, PChar('other form'));
  BtnWnd := FindWindowEx(OtherWnd, 0, nil, PChar('btn'));
  SendMessage(BtnWnd, BM_CLICK, 0, 0);
end;
Ответить с цитированием