begin process at 2010 02 10 08:29:12
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Delphi

 > 

Archives

 > 

Système

 > 

Comment recuperer et identifier les messages windows (WM_XXXXX)


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Comment recuperer et identifier les messages windows (WM_XXXXX)

dimanche 5 octobre 2003 à 21:52:53 | Comment recuperer et identifier les messages windows (WM_XXXXX)

Manthis


Bonjour,

Je voudrais savoir si qqn connait le moyen de recuper les messages windows grace à un handle, de les recuperer, afficher leurs noms a l'utilisateur.
QQN sait faire ca?????
mardi 28 octobre 2003 à 01:21:47 | Re : Comment recuperer et identifier les messages windows (WM_XXXXX)

yvemoreau

cette exemple sera incompréhensible ici,
CRÉER un nouveau projet , "voir" unit projet1
et supprimer tout puis copiez collez ...(pas de fiche unit1)

je ne sais cependant comment réalisé un projet standard disons ,avec une fiche ordinaire, mais bon cette exemple fonctionne ...j'ai ajouter Mouse Mouve et Key down a cet exemple que j'ai trouvé mais y'en a tellement de message qui s'agit de voir !!!

pour l'interception je comprend mais pour la création de la classe qui régit les messages avec windows faudra demander de l'aide ailleurs car c'est dur pur API Windows !!!


program Project1;

uses
Windows, Messages, SysUtils;

{$R *.RES}

function WindowProc(TheWindow: HWnd; TheMessage, WParam,
LParam: Longint): Longint; stdcall;
begin
case TheMessage of
Messages.WM_NCMOUSEMOVE:begin
SetWindowText(TheWindow, PChar('Message Time: '+IntToStr(
GetMessageTime)+' Mouse Move sur caption: '+
IntToStr(LoWord(GetMessagePos))+', '+
IntToStr(HiWord(GetMessagePos))));
{indicate that the message was handled}
Result := 1;
end;
Messages.WM_MOUSEMOVE:begin
SetWindowText(TheWindow, PChar('Message Time: '+IntToStr(
GetMessageTime)+' MOUSE MOVE : '+
IntToStr(LoWord(GetMessagePos))+', '+
IntToStr(HiWord(GetMessagePos))));
{indicate that the message was handled}
Result := 1;
end;
Messages.WM_KEYDOWN:begin
SetWindowText(TheWindow, PChar('Message Time: '+IntToStr(
GetMessageTime)+' KeyDown : '+
Char(WParam)+', '+
IntToStr(HiWord(LParam))));
{indicate that the message was handled}
Result := 1;
end;
{etc... à vous de voir !!!}


2{WM_DESTROY}: begin
PostQuitMessage(0);
Exit;
end;
WM_LBUTTONDOWN: begin
SetWindowText(TheWindow, PChar('Message Time: '+IntToStr(
GetMessageTime)+' Mouse Coordinates: '+
IntToStr(LoWord(GetMessagePos))+', '+
IntToStr(HiWord(GetMessagePos))));
{indicate that the message was handled}
Result := 1;
end;
else
{call the default window procedure for all unhandled messages}
Result := DefWindowProc(TheWindow, TheMessage, WParam, LParam);
end;
end;

function RegisterClass: Boolean;
var
WindowClass: TWndClass;
begin
WindowClass.Style := CS_HREDRAW or CS_VREDRAW;
WindowClass.lpfnWndProc := @WindowProc;
WindowClass.cbClsExtra := 0;
WindowClass.cbWndExtra := 0;
WindowClass.hInstance := hInstance;
WindowClass.hIcon := LoadIcon(0, IDI_APPLICATION);
WindowClass.hCursor := LoadCursor(0, IDC_ARROW);
WindowClass.hbrBackground := COLOR_WINDOW;
WindowClass.lpszMenuName := nil;
WindowClass.lpszClassName := 'TestClass';
Result := Windows.RegisterClass(WindowClass) <> 0;
end;

var
TheMessage: TMsg;
OurWindow: HWND;
begin
if not RegisterClass then Exit;

OurWindow := CreateWindowEx(0,'TestClass','GetMessage Example',WS_OVERLAPPEDWINDOW or WS_VISIBLE,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,0,0,hInstance,nil);

if OurWindow=0 then Exit;

while GetMessage(TheMessage,0,0,0) do
begin
TranslateMessage(TheMessage);
DispatchMessage(TheMessage);
end;

end.
yve


Cette discussion est classée dans : recuperer, windows, messages, wm, identifier


Répondre à ce message

Sujets en rapport avec ce message

Messages windows [ par Gysmo ] Salut, Je n'arrive pas a faire d'operation logic sur les messages de windows de cette maniere:procedure TForm1.FormCreate(Sender: TObject);begin App Petit souci avec messages Windows [ par ThWilliam ] Bonjour à tous, Dans le code d'un composant, je gère les événements souris par réception messages Windows.Petit problème avec : WM_LBUTTONUP.Quand le recuperer Valeur héxadecimal du registre windows [ par Mxbug ] Messages windows [ par simonpelloquin ] Bonjour,Je vais peut être me faire gronder parce que la réponse est peut être sur le site, mais j'ai pas trouvé... Je cherche à intercepter un message Pour recuperer des information [ par tof62bis ] Bonjour a tousJe vous explique mon soucis, j'aimerai recupéré le contenu d'un edit et d'un combobox dans un bloque noteDonc je ne demande de me faire chemin des processus actif windows [ par bazbaz2020 ] je veut recuperer un chemain d'un fichier en cour d'execution comme explorer dans les processus : " c:\windows\explorer.exe " s.v.p repondez mon au version compatible avec windows vista ? [ par zininf ] salut tout le monde ...je veux savoir s'il existe une version delphi compatible avec le système d'exploitation vista !!merci . ou recuprer les mots de passes mémorisés dans le windows xp [ par bazbaz2020 ] slt a tous je veut recuprer les mots de passes mémorisés dans windows avec un code source delphi merci de m'aider .. Pb lancement Servicesau démarrage de windows [ par sidali09000 ] Bonjour à tous.Voilà, j'ai développé une application service sous delphi 7, cette dernière interagit avec le bureau via une icône affichée dans la bar [Info]Compilo Delphi -> pour 2010 [ par rt15 ] Bonjour,Juste pour ceux qui seraient pas encore au courant et que ça pourrait intéresser... La traduction d'une annonce de heu... Emabarcadero on va d


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,326 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales