P
Phil Crosby
I'm using Spy++ to look at the WM_PAINT window messages moving across the
word process, to see how the windows in Word are related. If you edit the
content of the document using the keyboard, it seems like the only windows
that receive a WM_PAINT message are the two MsoCommandBar windows (that are
children of the WwB document window) and the status bar. I think the actual
repainting of the document is happening in the WwG window. Why is it
repainting when there is no WM_PAINT message? I'm no expert in win32
painting, but I thought it was a best practice not to paint outside of a
WM_PAINT message. Do you think word is using CreateGraphics directly on the
device context?
I'm concerned because I'm interested in monitoring closely what Word is
doing - especially when it's done painting. I'm doing this for a research
prototype, so all hacks are allowed and best practices ignored ;-) I was
thinking of listening for WH_CALLWNDPROCRET using SetWindowHookEx and finding
out when the appropriate window was done responding to a WM_PAINT event.
However, if the Word window doing the redrawing of the document isn't sending
a "done" message when it's done painting, well, that strategy won't work.
Are there any general pointers I should look into? If Word is calling
CreateGraphics or some other giveaway win32 method that I can listen for,
what might that method be?
Thanks!
-Phil Crosby
word process, to see how the windows in Word are related. If you edit the
content of the document using the keyboard, it seems like the only windows
that receive a WM_PAINT message are the two MsoCommandBar windows (that are
children of the WwB document window) and the status bar. I think the actual
repainting of the document is happening in the WwG window. Why is it
repainting when there is no WM_PAINT message? I'm no expert in win32
painting, but I thought it was a best practice not to paint outside of a
WM_PAINT message. Do you think word is using CreateGraphics directly on the
device context?
I'm concerned because I'm interested in monitoring closely what Word is
doing - especially when it's done painting. I'm doing this for a research
prototype, so all hacks are allowed and best practices ignored ;-) I was
thinking of listening for WH_CALLWNDPROCRET using SetWindowHookEx and finding
out when the appropriate window was done responding to a WM_PAINT event.
However, if the Word window doing the redrawing of the document isn't sending
a "done" message when it's done painting, well, that strategy won't work.
Are there any general pointers I should look into? If Word is calling
CreateGraphics or some other giveaway win32 method that I can listen for,
what might that method be?
Thanks!
-Phil Crosby