Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Vista and WH_JOURNALPLAYBACK hook timing

56 views
Skip to first unread message

mTwain

unread,
Dec 18, 2006, 12:23:01 PM12/18/06
to
We have an macro recorder written in C++ that uses WH_JOURNALPLAYBACK and
H_JOURNALRECORD. It works find on all version of windows except Vista. (This
is not a UAC issue because the testing was done with UAC off.)

It has been verified that the application records macros correctly, however,
the playback process has timing issues. It appears that Vista is not
respecting the millisecond times returned by the playback hook function when
they are anything greater than zero. On XP the system waits the to withing 1
or 2 milliseconds when the playback function returns a value on a call with
nCode set to HC_SKIP. On Vista the wait can be off by more than a full
second. This has the net effect of having the macro playback appear to
freeze for protracted periods and then race to catch up.

Since the application works flawlessly on all other 32 bit versions of
Windows and other macro records seem to have the same problem on Vista, it
appears to be a Vista bug. Is this the case?

mTwain

unread,
Dec 18, 2006, 12:31:01 PM12/18/06
to
My orginal post contains an error. The text "nCode set to HC_SKIP" should
have read "nCode set to HC_GETNEXT."

Jeffrey Tan[MSFT]

unread,
Dec 19, 2006, 3:02:12 AM12/19/06
to
Hi,

I originally used WH_JOURNALPLAYBACK to write a little program for my wife.
So after seeing your issue, I find back that little application and run it
on Vista(although I can not find the original source code now). Yes, I can
reproduce the strange timing issue.

I will give this issue a research and reply to you ASAP. Thanks.

Best regards,
Jeffrey Tan
Microsoft Online Community Support
==================================================
Get notification to my posts through email? Please refer to
http://msdn.microsoft.com/subscriptions/managednewsgroups/default.aspx#notif
ications.

Note: The MSDN Managed Newsgroup support offering is for non-urgent issues
where an initial response from the community or a Microsoft Support
Engineer within 1 business day is acceptable. Please note that each follow
up response may take approximately 2 business days as the support
professional working with you may need further investigation to reach the
most efficient resolution. The offering is not appropriate for situations
that require urgent, real-time or phone-based interactions or complex
project analysis and dump analysis issues. Issues of this nature are best
handled working with a dedicated Microsoft Support Engineer by contacting
Microsoft Customer Support Services (CSS) at
http://msdn.microsoft.com/subscriptions/support/default.aspx.
==================================================
This posting is provided "AS IS" with no warranties, and confers no rights.

Jeffrey Tan[MSFT]

unread,
Dec 21, 2006, 4:31:45 AM12/21/06
to
Hi,

I have forwarded this issue to the dev team for consulting, but I still did
not get any response yet. I will feedback any progress here ASAP. Thanks
for your patient.

ind...@gmail.com

unread,
Dec 21, 2006, 10:26:42 PM12/21/06
to
mTwain wrote:
> We have an macro recorder written in C++ that uses WH_JOURNALPLAYBACK and
> H_JOURNALRECORD. It works find on all version of windows except Vista. (This
> is not a UAC issue because the testing was done with UAC off.)

I've seen the same issue on Vista. A "hack" solution is to always
return zero for the delay, but sleep in the callback function for the
required time before returning (only when nCode == HC_GETNEXT). This
seems to work exactly the same as returning the delay value inside the
struct on XP, although I'm sure there are subtle differences that I'm
unaware of.

- Angus

Jeffrey Tan[MSFT]

unread,
Dec 25, 2006, 12:17:24 AM12/25/06
to
Hi mTwain,

Sorry, I have tried to contact the Windows dev team for 3 times, however,
still did not get any response.

Since this issue really looks like a Vista bug, I recommend you contact
Microsoft PSS case support. The PSS engineer may help you to submit a bug
RFC to the dev team through the official channel.

You can contact Microsoft Product Support by contacting us at
1-(800)936-5800 or by choosing one of the options listed at
http://www.microsoft.com/services/microsoftservices/supp.mspx

Thanks for your understanding.

Ed

unread,
Jan 2, 2007, 4:08:41 PM1/2/07
to
Hi, Jeffrey,
I've also been working to resolve a Journal Playback issue on
Windows XP machines with Internet Explorer 7 installed. The
application I am working with uses Journal Playback to fill in a few
edit boxes in a dialog box. After IE 7 has been installed, the
playback fails sporadically. When it fails, it always fills in the
first edit box successfully and then, when 'tabbing' to the second edit
box, it just stops. I have subclassed the edit boxes and can see that
although some windows messages are sent to the second edit box, it
never sends the messages for the 'characters' we are playing back.
This application has functioned successfully for several years on
different versions of Windows. Any insight or possible workarounds
would be appreciated. Thanks.

@@ Ed @@

After serious thinking Jeffrey Tan[MSFT] wrote :

0 new messages