automatiser une installation : prob avec un bouton

automatiser une installation : prob avec un bouton - C - Programmation

Marsh Posté le 03-05-2004 à 17:32:37    

Bonjour apres une recherche dans le vide sur google et meme le forum, je viens ici voir personne n'aurai une idée a mon prob.
 
je tente de faire un programme qui install plusieurs sans avoir besoin de l'utilisateur ( enfin il devra just executer le premier pour que ca demare )
 
pour l'instant j'ai reussi a faire un prog qui execute un autre prog, attend la fin du premier avant de lancer le second et ainsi de suite.
 
Mais j'ai vite rencontre un prob car tous les logiciels que je tente d'installer propose un ou plusieurs bouton.
 
Et la c le drame : je n'arrive pas a trouve un code ou un exemple qui permet soit de simuler le click de la souris sur le bouton ( je pense que c une solution barbare ) soit activer l'evenement du bouton et donc de poursuivre l'installation du prog.
 
Toute personne qui propose la bonne vieille methode du click gauche de la souris : s'abstenir ==> je ne veux pas avoir besoin de l'intervention de l'utilisateur pdt les installs ( surtt que ca risque de prendre un max de temps )
 
bon vla le code

Code :
  1. #include <iostream>
  2. #include <stdlib.h>
  3. #include <process.h>
  4. #include <windowsx.h>
  5. void install( char * nomfic );
  6. int main(int argc, char *argv[]) {
  7.  
  8.   printf("Lancement de l'install\n" );
  9.   install("prog1" );
  10.   install("prog2" );
  11.   system("PAUSE" );
  12.   return 0;
  13. }
  14. void install( char * nomfic ) {
  15.    printf("Install de %s %i\n",nomfic,getpid());
  16.    // Lancement du programme en tant que Process  
  17.    PROCESS_INFORMATION Process;
  18.    STARTUPINFO StartInfo;
  19.    memset(&StartInfo, 0, sizeof(StartInfo));
  20.    StartInfo.cb = sizeof(StartInfo);
  21.  
  22.    if(!CreateProcess(NULL, nomfic, NULL, NULL, FALSE,
  23.         CREATE_DEFAULT_ERROR_MODE, NULL, NULL, &StartInfo, &Process))
  24.    {
  25.        printf("Error CreateProcess : %s",nomfic);
  26.        return;
  27.    }
  28.    // Attente de la fin du programme  
  29.    WaitForSingleObject(Process.hProcess, INFINITE);
  30. }

Reply

Marsh Posté le 03-05-2004 à 17:32:37   

Reply

Marsh Posté le 03-05-2004 à 19:29:14    

Récupère un handle sur les fenêtre concernées et envoies les messages ad'hoc.
Utilises Spy++ pour + d'infos sur les fenêtres.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed