Конференция "WinAPI" » Cобытия курсора мышки.
 
  • hub00 © (01.06.08 23:54) [40]
    "Если работаем в нашей проге, то устанавливаем фокус для страницы, загрузившейся в TWebbrowser:
    Webbrowser1.SetFocusToDoc;"

    А если к примеру не в нашей программе (Mozilla)?
    Как тогда?
  • имя (01.06.08 23:57) [41]
    Удалено модератором
  • hub00 © (02.06.08 00:04) [42]
    Способ замечательный. Спасибо большое ничего сказать!
    Есть такие сайты которые могут ругаться на версию браузера или его название.
    В свойствах вроде нет поля userAgent так бы вписал что нужно и хорошо.
  • hub00 © (02.06.08 00:08) [43]
    А если в связке использовать компонент idHTTP там все можно вписать что хочется.
  • имя (02.06.08 00:15) [44]
    Удалено модератором
  • SergeyIT (02.06.08 00:20) [45]

    > что ж это за сайт такой интересный?

    Очень странная задачка
  • hub00 © (02.06.08 00:33) [46]
    А лучше все удалите? Реально стоящие вещи человек изложил.
    Я не понимаю такого...
  • SergeyIT (02.06.08 00:40) [47]

    > Реально стоящие вещи человек изложил.

    Для нереальных задач...
  • hub00 © (02.06.08 00:45) [48]
    Выходит нет ничего не реального.
  • hub00 © (03.06.08 15:18) [49]
    Ошибка чтения памяти. Вылетают все приложения которые были активны.

    Листинг :
    var
    HookHandle: hHook;

    function HookProc(Code: integer; WParam: word; LParam: Longint): Longint; stdcall;
    begin
    if Code >= 0 then begin
    result := 0;
    with Form1 do
       case TMsg(Pointer(lParam)^).message of
       WM_SETCURSOR : ShowMessage('Сообщение получено.');
       end;
    end;    
    result := CallNextHookEx(HookHandle, code, WParam, LParam);
    end;

    procedure TForm1.FormCreate(Sender: TObject);
    begin
    HookHandle := SetWindowsHookEx(WH_CALLWNDPROCRET, @HookProc, HInstance, 0);
    end;

    procedure TForm1.FormDestroy(Sender: TObject);
    begin
    if HookHandle <> 0 then
     UnhookWindowsHookEx(HookHandle);
    end;
  • Игорь Шевченко © (03.06.08 18:05) [50]

    > procedure TForm1.FormCreate(Sender: TObject);
    > begin
    > HookHandle := SetWindowsHookEx(WH_CALLWNDPROCRET, @HookProc,
    >  HInstance, 0);
    > end;



    > with Form1 do
    >    case TMsg(Pointer(lParam)^).message of
    >    WM_SETCURSOR : ShowMessage('Сообщение получено.');
    >    end;
    > end;    


    Статьи про хуки прочитай, чего там можно, а чего нельзя
  • Leonid Troyanovsky © (03.06.08 18:27) [51]

    > hub00 ©   (03.06.08 15:18) [49]

    > Ошибка чтения памяти. Вылетают все приложения которые были
    > активны.

    Любопытно.
    А как же их всех угораздило быть активными?

    > function HookProc(Code: integer; WParam: word; LParam: Longint):
    >  Longint; stdcall;
    > begin
    > if Code >= 0 then begin
    > result := 0;
    > with Form1 do

    Ловко придумано,
    но непонятно: зачем же тут Form1.
  • Leonid Troyanovsky © (03.06.08 18:29) [52]

    > Leonid Troyanovsky ©   (03.06.08 18:27) [51]

    Sorry, хотел продолжить, но промахнулся.

    > HookHandle := SetWindowsHookEx(WH_CALLWNDPROCRET, @HookProc,
    >  HInstance, 0);

    Почему же 0? Ну, или, сажем, HInstance.

    --
    Regards, LVT.
 
Конференция "WinAPI" » Cобытия курсора мышки.
Есть новые Нет новых   [134433   +22][b:0][p:0]