Archive: Windows messaging: a utility and a query


Windows messaging: a utility and a query
I'm currently breaking my head trying to understand windows messaging. (FindWindow, IsWindow, SendMessage) I've been trawling the other posts here after searching on the subject and I'm *slowly* making my way through them and the related material in the NSIS 1.98 download. I'll probably be posting queries here on the subject, but I'll wait until after I've ploughed through what has already been written as I don't want to annoy everyone by re-asking questions that have already been answered.

In the meantime, I would appreciate it if anyone can refer me to a URL where detailed info can be found on the individual WM_ messages that can be sent -- their parameters, dependencies, what they do, and when and how to use them. I've seen KiCHiK's WinMessages.NSH which is useful, but I'd like to learn more about the use of the messages listed there. (I've checked on www.allapi.net but there's not much there on the actual messages.)

In the meantime, others interested in the same subject may find the attached utility useful. It's based on some stuff that I've read here (sources acknowledged). I wrote it to help me experiment with messaging, and I thought I'd upload it here as a way of repaying some the help I've received so far on this forum. The zip contains an .exe, its .nsi source and a couple of related text files. (The .exe displays its own usage syntax, but here it is so you can get an idea of what it does.)

Usage for IsWindow.exe:
IsWindow "Window title" ["message to window"]
e.g.
IsWindow "Myfile.txt - Notepad" "0x10 0 0"
(Above example closes the Notepad window.)


I don't know of a single page or set of pages that nice and neatly discusses every message but you can find most of what you need on the Microsoft MSDN site.

For example, searching for WM_PAINT on that site I found this link, and searching for other messages should work just as well (apart maybe for some of the more obscure ones).

The only thing to watch out for is results that are actually documenting Windows CE, there are a lot of pages that look very similar but are CE specific!