I need to be able to receive events without using JournalRecord, that works on Windows 98 and above.

I have a WindowsHook that is requesting JournalRecord information. This is done for a control I'm building, so it can:

Obtain information on mouse buttons (system wide), be told when the mouse moves and retrieve keyboard information including extended keys (internet keyboard keys).

The problem is: Windows 98 and few others, only allow 1 instance of a JournalRecord and pressing CTRL + ALT + DELETE removes the recording (rendering the control instances dead).

The Keyboard and Mouse hooks only work on a thread, not system wide. There simply must be a better way to do this.

The Internet keyboard extended keys are read like this:

The message's lParamLow's lower byte will have 255 (denoting an invalid standard key), but the next byte upward (the highbyte of the low word) holds the extended key value. The keyboard hook does not seem to provide this extra information, nor will it do so system wide.

Anyone have any idea on how I can do this "safely"? I have it working with Journal Record, but I see the control onscreen now, dead (pressed CTRL + ALT + DELETE), have to end the task to get rid of the program. (But I put in a timer call to close it so I wouldn't have to.)

Not sure how difficult this is, but if it is really difficult, I will raise the points. I'd love to finish the control.

I'm also trying to find the fastest method to do a region build based on a transparent color of a picture so I can SetWindowRgn to set the region when it's finished. (The scanning method with GetPixel, well, isn't fast.)

Posted on 2004-11-04 08:24:59 by FunkyMeister