Показать сообщение отдельно
  #8  
Старый 30.01.2009, 20:15
alxsev alxsev вне форума
Прохожий
 
Регистрация: 28.01.2009
Сообщения: 4
Репутация: 10
По умолчанию

вот что мне посоветовали на другом форуме.. все теперь работает
Код:
var h1,h2:hwnd;
begin

  h1:=0;
  h2:=0;

  h1 := FindWindow ('#32770', 'Загрузка файла');
  if h1<> 0 then
  begin

    h2 := FindWindowEx(h1, 0, 'Button', '&Сохранить');
    if (h2<>0) then
    begin
      //Устанавливаем фокус на кнопку и активируем её - автоматом на окно
      SetForegroundWindow(h2);
      SendMessage(h2, WM_ACTIVATE, 1, 0);
      SendMessage(h2, WM_ENABLE, 1, 0);
      SendMessage(h2, WM_SETFOCUS, 1, 0);

      //Переносим фокус на другое окно, чтобы перерисовалось окно IE
      SetForegroundWindow(handle);
      Application.ProcessMessages;
      SetForegroundWindow(h2);
      SendMessage(h2, WM_SETFOCUS, 1, 0);
      Sleep(1000); //Делаем обязательную паузу, чтобы окно успело прорисоваться

      //Посылаем Enter кнопке
      keybd_event(VK_RETURN,0,KEYEVENTF_EXTENDEDKEY or KEYEVENTF_KEYUP,0);
      keybd_event(VK_RETURN,0,KEYEVENTF_EXTENDEDKEY,0);
      keybd_event(VK_RETURN,0,KEYEVENTF_EXTENDEDKEY or KEYEVENTF_KEYUP,0);

    end;
  end;
Admin: Пользуемся тегами!
Ответить с цитированием