Se connecter avec
S'enregistrer | Connectez-vous

RESOLU[C] ajouter un fichier au lancement d'un *.exe

Dernière réponse : dans Programmation

Bonjour, j'aimerai que IE lance un exe (crée par moi qui compte le nombre de fois que ce programme été lancé), a chaque fois qu'IE est lancé, et plusieurs autres programmes pour y faire des statistiques.
Je sais qu'il y a déja des logiciel crée a cet effet, mais je voudrais le développer moi meme.
(ex: je lance MSN, ou IE ou autre => mon programme se lance et incrémente un nombre enregistré dans un fichier)

Mais je n'est aucune idée de la façon de faire pour y arriver.
Si vous savez, n'hésitez pas :p 
Merci d'avance
Lassé par la pub ? Créez un compte
Expert Programmation

Avec les fonctions Enum..., tu donnes en paramètre un nom de fonction (qui en fait est une fonction que tu écris toi-même). Cette fonction que tu écris sera appelé à chaque process de la liste.

Voila, j'ai encore un peu recherché sur google et j'ai trouvé ce code:
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>

BOOL CALLBACK EnumWindowsProc(HWND hwnd, LPARAM lParam)
{
// fenetre visible ou réduite
if(IsWindowVisible(hwnd))
{
// code a executer
}
else
{
// fenetre invisible
}

return TRUE;
}

int main(int argc, char *argv[])
{
EnumWindows((WNDENUMPROC) EnumWindowsProc, 0);

return 0;
}


C'est très bien, sauf que je ne sais pas ou le nom de mon processus ou fenetre pour qu'il eecute mon code lorsque cette fenetre est ouverte.
Et je ne connait (presque) rien sur les processus, si on les reconnait par leur nom, leur ID etc...

Expert Programmation

Dans ta fonction d'énumération, avec GetWindowText() en donnant le HANDLE (numéro identifiant) de la fenêtre, tu obtiens son nom. Tu peux aussi utiliser FindWindow()/GetWindow() pour rechercher une fenêtre particulière.
Après il faut distinguer 2 choses:
- EnumWindow permet de gérer les fenêtres windows
http://msdn.microsoft.com/en-us/library/ms632598(VS.85).aspx
- tout ce qui touche aux processus mêmes (je ne pense pas que c'est ce que tu cherches ;)  )
http://msdn.microsoft.com/en-us/library/ms682623(VS.85).aspx

Déjà en faisant afficher le nom des fenêtres, ou des process, tu trouveras probablement ce que tu cherches.

Merci, je vais peut etre paraitre un peu lourd, mais je ne connais presque rien en la matiere.
Pour le hadle, comment on connait le numero d'identifiant de la fenetre ?
C'est ça que je me demande ...

EDIT:
Déjà en faisant afficher le nom des fenêtres, ou des process, tu trouveras probablement ce que tu cherches.

Oui merci, je pense qu'avec ça c'est bon, si on met une condition pendant le listing des processus je pourrais executer mon programme, merc CRicky !
Lassé par la pub ? Créez un compte
Tom's guide dans le monde