begin process at 2012 02 11 08:38:42
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Delphi

 > 

Système

 > 

Périphérique

 > 

Comment récupérer les handles des fenêtres d'un processus ?


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

Comment récupérer les handles des fenêtres d'un processus ?

vendredi 14 septembre 2007 à 14:23:25 | Comment récupérer les handles des fenêtres d'un processus ?

H60

Bonjour à tous

J'ai bêtement fais un copier coller du code que j'ai trouvé dans la rubrique
Comment récupérer les handles des fenêtres d'un processus ?
http://www.developpez.com/delphi/faq...dlefenetreproc

mais ce code ne compile pas

type
  PFindWindowsStruct = ^TFindWindowsStruct;
  TFindWindowsStruct = record
    ProcessID: DWORD;
    HandleList: TList;
  end;

function EnumWindowsProc(hwnd: HWND; lParam: LPARAM): boolean; stdcall;
var
  dwProcessId: DWORD;
begin
  if lParam <> 0then
  begin
    GetWindowThreadProcessId(hwnd, dwProcessId);
    with PFindWindowsStruct(lParam)^ do
      if dwProcessID = ProcessID then
        HandleList.Add(Pointer(hwnd));
    result:= true;
  end
  else
    result:= false;
end;

procedure FindProcessWindows(ProcessID: Integer; Handles: TList);
var
  findWindowsStruct: TFindWindowsStruct;
begin
  findWindowsStruct.ProcessID:= ProcessID;
  findWindowsStruct.HandleList:= Handles;
  EnumWindows(@EnumWindowsProc, Integer(@findWindowsStruct));
end;


Dans la fonction :
EnumWindows(@EnumWindowsProc, Integer(@findWindowsStruct));

j'ai le message : "Variable requise". N'étant pas un spécialiste je ne comprends pas ce message.

J'utilise Delphi 6 sous Windows XP SP2

Si vous avez une autre solution je ne suis pas contre bien que celle-ci me paraisse intéressante.

Pouvez-vous m'aider?

Merci de votre réponse.
vendredi 14 septembre 2007 à 18:00:46 | Re : Comment récupérer les handles des fenêtres d'un processus ?

Jean_Jean

Membre Club
Bj H60,
Tu trouveras l'aide  de la fonction EnumWindows dans le SDK, fournie avec delphi!
il faut que tu vérifie que tes variables sont compatibles avec les paramètres passés dans la fonction.
C'est ce que je ferai en premier!...
bon code
Jean_jean
vendredi 14 septembre 2007 à 19:04:18 | Re : Comment récupérer les handles des fenêtres d'un processus ?

cirec

Membre Club Administrateur CodeS-SourceS
Salut,

j'ai testé ce code et il fonctionne très bien sous Delphi7 et Turbo-Delphi ???

 
@+
Cirec

samedi 15 septembre 2007 à 09:02:56 | Re : Comment récupérer les handles des fenêtres d'un processus ?

H60

Réponse acceptée !

Merci à tous ceux qui ce sont interessés à mon problème

J'ai trouvé ma solution il fallait que j'écrive

EnumWindows(@TForm1.EnumWindowsProc, Integer(@findWindowsStruct));

à la prochaine



Cette discussion est classée dans : end, hwnd, processid, handles, findwindowsstruct


Répondre à ce message

Sujets en rapport avec ce message

cacher, hide, process, application, xp [ par Den ] voici un code trouvé sur le web, il devrait permettre de cacher le processus du gestionnaire des taches de XP, je ne sait pas l'utiliseret j'ai déposé Screenshots de l'écran, sauf notre fiche [ par Bacterius ] Bonjour, pour un petit projet graphique, je cherche à capturer l'écran, sauf notre fiche. Il existe bien la solution de rendre invisible notre fenêtre Problème de création d'un TVarRec[] [ par JeremyLecouvert ] Bonjour tout le monde, je galère depuis 3 jours sur un passage de paramètres (pitoyable!).. Je tourne en rond, quelqu'un pourra sûrement m'aider... TRadioGroup = faire un mix des premiers boutons... [ par showmessage ] Salut tout le monde ! Voilà j'ai un pépin : je doit réaliser un RadioGroup avec 4 boutons : les opérations X,:,+ et - pour un quizz de calcul mental [HELP]Problème avec insertion ADOQuery [ par denden13h54 ] Bonjour, j'ai un gros problème d'insertion avec ADOQuery. J'insère ans une base de donnée MySQL. je vous montre le code qui bug : [code=pas]with ADO Problème de transparence d'un contrôle [ par ThWilliam ] Bonjour à tous. J'écris un composant transparent dérivé de TCustomControl. Je ne peux pas le dériver de TGraphicControl, car j'ai besoin d'un contrôl Problème de classes [ par smartyan007 ] Bonjour, J'ai un petit souci: J'ai un unit Polygon où sont déclarées les classes TPolygon, TTriangle et Tsquare. (Exemple repris Delphi Basics); La changement de couleur des lignes sélectionnées par programme dans un TListView [ par jjnouiphp ] Bonjour, Je souhaite que lorsque je sélectionne par programme plusieurs lignes d'un TListView, ces lignes soient colorées comme lorsqu'il s'agit d'une Problème de connexion avec le serveur MySQL [ par figoleparigo ] Bonjour à tous, Je travaille sur un service Windows en Delphi/Pascal et j'utilise une BD MySQL pour traiter des données. J'utilise mysql.pas + libmys EAccessViolation [ par Leucistic ] Bonjour, Je m'excuse d'avance de cette question sûrement très bête mais je bloque dessus depuis 2 jours. Après avoir regardé plusieurs post sur ce f


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

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 : 0,998 sec (4)

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