Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2011.10.16;
Скачать: CL | DM;

Вниз

Перехват событий от мыши в любом месте экрана   Найти похожие ветки 

 
Bora ©   (2009-08-26 17:13) [0]

Как перехватить такие события, как нажатие или отпускание кнопок мыши и перемещение курсора, вне своей программы?


 
Bora ©   (2009-08-26 17:28) [1]

Нашел вот такой код:

unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs,Wintypes,Winprocs, StdCtrls, AppEvnts;

type
 TForm1 = class(TForm)
 private
   { Private declarations }
 public
   { Public declarations }
 end;
 function SetHook:Boolean;
 function UnHookHook:Boolean;
 function HookProc(Code:integer; wParam: Word; lParam: Longint): Longint;

var
 Form1: TForm1;
 HookedAlready:Boolean;
 ourHook:HHook;

implementation

{$R *.dfm}

function SetHook:Boolean;
begin
if HookedAlready then exit;
ourHook:=SetWindowsHookEx(WH_MOUSE,HookProc,HInstance,0);
(*В ПРЕДЫДУЩЕЙ СТРОКЕ ВЫДАЕТ ОШИБКУ: incompatible types:"calling сonventions differ"*)
HookedAlready:=True;
end;

function UnHookHook:Boolean;
begin
UnHookWindowsHookEx(ourHook);
HookedAlready:=False;
end;


 
TIF ©   (2009-08-26 17:29) [2]

Hooks - Хуки


 
Bora ©   (2009-08-26 17:30) [3]

что - хуки?


 
Bora ©   (2009-08-26 17:32) [4]

TIF, можно ли поподробнее или хотя бы разъясни на том примере, что я дал


 
TIF ©   (2009-08-26 17:32) [5]

> что - хуки?

Ключевое слово для поиска в интернете

Про хуки в MSDN:
http://msdn.microsoft.com/en-us/library/ms997537.aspx


 
Bora ©   (2009-08-26 17:36) [6]

спасибо - буду читать. Но все равно посмотри, пожалуйста, почему там возникает ошибка в [1]?


 
TIF ©   (2009-08-26 17:45) [7]

Ещё статья в тему
http://delphikingdom.com/asp/articles_forum.asp?ArticleID=548

> почему там возникает ошибка в [1]?

calling сonventions differ - различаются соглашения о вызовах

About Calling conventions:
http://www.swissdelphicenter.ch/torry/showcode.php?id=1233

Соглашения о вызовах:
http://podgoretsky.com/ftp/Docs/Delphi/D7/d7stp/Glava28/Index4.html


 
Сергей М. ©   (2009-08-27 21:57) [8]


> Нашел вот такой код


Выкинь его, он принципиально не решает поставленной задачи, кр.того в этом виде попросту не будет работать.

Следует ставить хук WH_MOUSE_LL.



Страницы: 1 вся ветка

Текущий архив: 2011.10.16;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.007 c
15-1308682059
Кто б сомневался
2011-06-21 22:47
2011.10.16
На сколько уменьшается продолжительность дня после 22 июня?


15-1308601797
Юрий
2011-06-21 00:29
2011.10.16
С днем рождения ! 21 июня 2011 вторник


15-1308062128
Мимо не прошел
2011-06-14 18:35
2011.10.16
Свое


2-1309352976
Scott Storch
2011-06-29 17:09
2011.10.16
Assert


15-1308891816
Дмитрий С
2011-06-24 09:03
2011.10.16
Как назначить клавиши на кнопки Back/Forward в IDE?