Communication inter-process communication

Description

Voici un exemple simple de communication entre 2 applications.

Le Serveur, celui qui envoye des données dans mon exemple.
J'ecris mes infos dans une structure.
Je recherche le handle de mon application client, via l'API :
ThWnd = FindWindow(vbNullString, "App Client")
"App client" est le nom recherché, ThWnd est le handle retourné, 0 si No found
on envoie le tous via:
i = SendMessage(ThWnd, WM_COPYDATA, Me.hwnd, cdCopyData)
ThWnd est le handle de mon application client (Qui reçoit)
WM_COPYDATA est le N° du Message windows (voir client)
Me.hwnd: Handle de l'application serveur
cdCopyData: la structure à envoyer

Le client reçoit l'information.
Détourner les message windows dans une fonction
lpPrevWndProc = SetWindowLong(gHW, GWL_WNDPROC, AddressOf WindowProc)
WindowProc : nom de ma function recevant TOUS les message.
Si je reçoit le N° de message WM_COPYDATA, j'ai a disposition une information, je peux donc la lire.
Si le N° de message ne vous interresse pas il faut le rendre à Windows.
avant de quitter l'application il est OBLIGATOIRE de ne plus détourner les message:
temp = SetWindowLong(gHW, GWL_WNDPROC, lpPrevWndProc)

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.