WEL Hook: Difference between revisions

From EiffelStudio: an EiffelSoftware project
Jump to navigation Jump to search
Manus (talk | contribs)
No edit summary
King (talk | contribs)
mNo edit summary
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
[[Category:WEL]]
[[Category:WEL]]


==There 3 different kinds of hooks now. Which one is better?==
==There are 3 different kinds of hooks now. Which one is better?==




Line 7: Line 7:


     Problems:
     Problems:
     1. Not work when pointer button pressed and pointer move outside the same process.
     1. Does not work with pointer button pressed and when pointer moves outside the same process.
     2. Cursor will changed outside the same process.
     2. Cursor will be changed outside the same process.


* 2.Wel hook with low level mouse hook (WH_MOUSE_LL) and normal hook (WH_MOUSE).
* 2.Wel hook with low level mouse hook (WH_MOUSE_LL) and normal hook (WH_MOUSE).


     Problems:
     Problems:
     1. Cursor will changed outside the same process.
     1. Cursor will be changed outside the same process.
     2. Low level mouse hook not work on Windows 98.
     2. Low level mouse hook does not work on Windows 98.


* 3.Wel hook with journal record hook (WH_JOURNALRECORD) and normal hook (WH_MOUSE).
* 3.Wel hook with journal record hook (WH_JOURNALRECORD) and normal hook (WH_MOUSE).


     Problems:
     Problems:
     1. Cursor will changing between our application's cursor and other process cursor.
     1. Cursor will change between our application's cursor and another processes cursor.
     2. Low level mouse hook not work on Windows 98.
     2. Low level mouse hooks do not work on Windows 98.


* 4.Wel hook (heavy capture) and Windows setCapture (normal capture) working at the same time.
* 4.Wel hook (heavy capture) and Windows setCapture (normal capture) working at the same time.


     Problems:
     Problems:
     1. Not work when pointer button pressed and pointer move outside the same process EXCEPT the first time.
     1. Does not work when pointer button pressed and pointer move outside the same process EXCEPT the first time.
     Advantage:
     Advantage:
     1. Actually most cases user only care about first time when pointer button pressed.
     1. Actually, in most cases users only care about the first time when pointer button pressed.


* Final words:
* Final words:
      
      
     If I can find a way to stop Windows change mousr cursor, I think "2" it's perfect. (But it still not support Windows98)
     If I can find a way to stop Windows from changing mouse cursor, I think "2" is perfect. (But is still not supported by Windows98)

Latest revision as of 19:09, 7 April 2006


There are 3 different kinds of hooks now. Which one is better?

  • 1.Old one in svn. Use WM_MOUSE.
   Problems:
   1. Does not work with pointer button pressed and when pointer moves outside the same process.
   2. Cursor will be changed outside the same process.
  • 2.Wel hook with low level mouse hook (WH_MOUSE_LL) and normal hook (WH_MOUSE).
   Problems:
   1. Cursor will be changed outside the same process.
   2. Low level mouse hook does not work on Windows 98.
  • 3.Wel hook with journal record hook (WH_JOURNALRECORD) and normal hook (WH_MOUSE).
   Problems:
   1. Cursor will change between our application's cursor and another processes cursor.
   2. Low level mouse hooks do not work on Windows 98.
  • 4.Wel hook (heavy capture) and Windows setCapture (normal capture) working at the same time.
   Problems:
   1. Does not work when pointer button pressed and pointer move outside the same process EXCEPT the first time.
   Advantage:
   1. Actually, in most cases users only care about the first time when pointer button pressed.
  • Final words:
   If I can find a way to stop Windows from changing mouse cursor, I think "2" is perfect. (But is still not supported by Windows98)