Every GUI control in Windows is a so called window. These windows are identified via a handle, given by the OS. You can find out the handle through the name (or the text) using the FindWindow(Ex) function. You can find the names with Microsofts

software. Those windows can receive messages from the operating System. For example when you click on a window the operating system sends a mousedown and mouseup message. You can send these messages virtually by calling SendMessage or PostMessage.
Quote:
|
So i'm wondering is there any other way to find how do programs communicate?
|
What do you mean by that? Programs usually communicate via Pipes, Message Queues (don't confuse them with with the GUI messages send via SendMessage) or Shared Memory. The communication via SendMessage is just the way GUI controls work, Messages are queued for events, and the program checks the queue regularly and checks if any events appeared and the program needs to react. Also these Messages are used to communicate with the Controls (Managed by the operating system). For example to set the Text of a Button you send a SetText message. You can find more information about these message on