====== Les Messages Windows ====== ===== Identification des Messages Windows ===== ==== Messages privés ==== Une application peut créer des messages destinés à être utilisés par ses propres fenêtres ou à communiquer avec les fenêtres d'autres processus. Les valeurs d'identification des messages sont utilisées comme suit : * 0x0000 -> 0x03FF : Réservé par le Système, NE Pas toucher ! (0 -> 1023) * 0x0400 -> 0x7FFF : (WM_USER=0x0400) utilisable pour les messages privés. (1024 -> 32767) * 0x8000 -> 0xBFFF : (Wm_APP=0x8000) utilisable pour les messages privés SI votre application est marquée version 4.0. (32768 -> 49151) * 0xC000 -> 0XFFFF : Plage réservée pour enregistrer des messages privé GARANTIS UNIQUE par appel a la fonction **RegisterWindowMessage** (49152 -> 65535) === Fonction RegisterWindowMessage === L'identificateur de message renvoyé par cette fonction est garanti comme étant unique dans tout le système. L'utilisation de cette fonction permet d'éviter les conflits qui peuvent survenir si d'autres applications utilisent le même identifiant de message à des fins différentes. La fonction** RegisterWindowMessage** est généralement utilisée pour enregistrer des messages afin de communiquer entre deux applications qui coopèrent. Si deux applications différentes enregistrent la même chaîne de message, les applications renvoient la même valeur de message. Le message reste enregistré jusqu'à la fin de la session. N'utilisez **RegisterWindowMessage** que lorsque plusieurs applications doivent traiter le même message.\\ Pour envoyer des messages privés dans une classe de fenêtre, une application peut utiliser n'importe quel nombre entier compris entre WM_USER(0x0400) et 0x7FFF (Les messages de cette plage sont privés pour une classe de fenêtre, et non pour une application. Par exemple, les classes de contrôle prédéfinies telles que BUTTON, EDIT, LISTBOX et COMBOBOX peuvent utiliser des valeurs dans cette plage). ====== Sources & Ressources ====== * [[https://docs.microsoft.com/en-us/windows/win32/winmsg/about-messages-and-message-queues]] * [[https://docs.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-registerwindowmessagea]] * [[https://jfdeterme.developpez.com/tutoriels/delphi/messagesys/]]