Knowledge Base |

# INFO: Journal Hooks and Compatibility

PSS ID Number: 106717

Article Last Modified on 5/6/2003

The information in this article applies to:

- Microsoft Win32 Application Programming Interface (API), when used with:
  - the operating system: Microsoft Windows NT 3.1
  - the operating system: Microsoft Windows NT 3.5
  - the operating system: Microsoft Windows 2000

This article was previously published under Q106717

## SUMMARY

Journal hooks are used to record and play back events, such as keyboard and mouse events. Journal hooks are system-wide hooks that take control of all user input, and therefore should be used as little as possible.

## MORE INFORMATION

Note that Windows NT does not ship with a Recorder application, as Windows 3.1 does. Therefore, it may be desirable to create an application that can play back macros recorded under Windows 3.1. However, there are a number of different problems with the Windows NT implementation of journaling that make it difficult to use macros recorded under Windows 3.1. The EVENTMSG structures recorded under Windows 3.1 that hold keystrokes do not play back under Windows NT. They must be modified, because the journal playback hook parses a scan code out of the EVENTMSG structure differently than the Windows 3.1 journal record hook put it in the structure. Under Windows 3.1, paramH specifies the repeat count. Under Windows NT, there is no way to specify a repeat count; it is always assumed to be 1.
For more information on hooks, please see the Hooks Overview in Volume 1 of the Win32 "Programmer's Reference" and the article "Win32 Hooks" included in the MSDN CD #5.

Keywords: kbHook kbinfo KB106717
Technology: kbAudDeveloper kbOSWin2000 kbOSWinNT310 kbOSWinNT350 kbOSWinNTSearch kbOSWinSearch kbWin32API kbWin32sSearch