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

Archive Delphi

 > 

Archives

 > 

Exécution

 > 

Executer un Programme en l'attachant a un processus


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

Executer un Programme en l'attachant a un processus

vendredi 22 avril 2005 à 16:55:15 | Executer un Programme en l'attachant a un processus

cricri_b34

Salut j'aimerais savoir comment executer un programme en l'attachant a un
processus ?
vendredi 22 avril 2005 à 17:24:29 | Re : Executer un Programme en l'attachant a un processus

davidfdm2002

Moi je suis enplein dedans pour un service...
Dans la pratique pour lancer un programme depuis un autre il suffit d'utiliser createprocess..
Voici un petit morceau de code recuperé de ci de la sur le web. Avec ça tu pourra facilement trouver les autres elements necessaires.
En esperant que cela t'aide, bonne continuation :)

Var  StartInfo    : TStartupInfo;
     ProcessInfo  : TProcessInformation;
     Fin          : Boolean;
     Fichier      : String;
     StdOutFile   : THandle;
     SecurityAttr : TSecurityAttributes;
     Lus          : Cardinal;
     Bloc         : PChar;
     Long         : Cardinal;
     Programme : String;
     Repertoire :String;
      Result:String;

begin


;
programme:=' notepad.exe;
                                          }
  FillChar (SecurityAttr, SizeOf(SecurityAttr), #0);
  SecurityAttr.nLength              := SizeOf (SecurityAttr);
  SecurityAttr.lpSecurityDescriptor := Nil;
  SecurityAttr.bInheritHandle       := FALSE;


  Try
    { Mise à zéro de la structure StartInfo }
    FillChar(StartInfo,SizeOf(StartInfo),#0);
    StartInfo.cb          := SizeOf(StartInfo);
    
        If CreateProcess(Nil, PChar(programme), Nil, nil, false,0, Nil, nil, StartInfo,ProcessInfo) Then
    Begin

      { ProcessInfo.hProcess contient le handle du process principal de l'application }
      Fin:=False;
      Repeat
        { On attend la fin de l'application }
        Case WaitForSingleObject(ProcessInfo.hProcess, 200)Of
          WAIT_OBJECT_0 :Fin:=True; { L'application est terminée, on sort }
          WAIT_TIMEOUT  :;          { elle n'est pas terminée, on continue d'attendre }
        End;
        { Mise à jour de la fenêtre pour que l'application ne paraisse pas bloquée. }
        Application.ProcessMessages;
      Until Fin;
      { C'est fini }
    End
    Else RaiseLastOSError;
  Finally

vendredi 22 avril 2005 à 20:59:31 | Re : Executer un Programme en l'attachant a un processus

cricri_b34

 ... ok j'vais essayer de faire quelque chose avec ça

mais en passant comment qu'on fait pour que notre programme soit considéré
comme un service?
samedi 23 avril 2005 à 00:55:19 | Re : Executer un Programme en l'attachant a un processus

davidfdm2002

bon, mais juste en passant alors...
Aulieu de crrer un projet de base style application, tu cré un projet service, cela te cré un objet de type Tservice.
Ensuite tu implement la fonction onExecute, ou OnStrat/onBegin dans le cas d'utilisation d'un Tread. tu compile ton programme et voila. Il existe un excelent exemple Delphi sur ce site, qui m'a permit de faire egalement mes premieres armes a ce sujet. Juste fait une recherche sur Service Windows , et tu trouvera :)
voila.
samedi 23 avril 2005 à 22:37:22 | Re : Executer un Programme en l'attachant a un processus

cricri_b34

ok merci

mais le code que tu ma donner  ne fait qu'exécuter un programme ?
dimanche 24 avril 2005 à 05:25:15 | Re : Executer un Programme en l'attachant a un processus

cricri_b34

ee jveux juste etre sur qu'on parle de la meme chose :

pour moi un service c un programme qui est considéré comme un programme systeme par windows ?
dimanche 24 avril 2005 à 05:26:49 | Re : Executer un Programme en l'attachant a un processus

cricri_b34

J'ai chercher des info sur createProcess mais j'ai pas trouvé comment l'utilisé pour executer un programme en l'attachant a un processus
dimanche 24 avril 2005 à 05:39:35 | Re : Executer un Programme en l'attachant a un processus

cricri_b34

J'ai chercher encore et ca me semble bcp + compliqué que ca attacher un programme a un processus
Il faut que mon programme soit considérer comment un débuggueur et ensuite je peux utiliser la fonction :

function DebugActiveProcess (dwProcessId: DWORD): BOOL




mardi 3 mai 2005 à 17:43:38 | Re : Executer un Programme en l'attachant a un processus

davidfdm2002

désolé pour la reponse...

woui un service est bien un programme systeme.
Tu créé ton service en delphi (delphi 6 pour moi...) , cela te cré un exe..
en ligne de commande tu ecrit
monexe.exe /install
et ca te l'installe entant que service  windows.
Poour le desinstaller tu retape
monexe.exe /uninstall

Voila..
Sinon je comprend pas du tout ce que tu veux faire avec le debuggage...
mercredi 11 mai 2005 à 03:30:22 | Re : Executer un Programme en l'attachant a un processus

cricri_b34

merci c exactment ca que je voulais savoir
mais c ou que j'entre ces commande?

1 2

Cette discussion est classée dans : programme, processus, executer, attachant


Répondre à ce message

Sujets en rapport avec ce message

Envoie de programme dans l'icon tray [ par FurySpike ] Bonjour a tous, J'aimerais savoir comment on fait pour envoyer son programme dans la bare de tache (en bas a droite) ??Mon programe offre le choix Attendre la fermeture d'un programme déjà ouvert [ par Serial326 ] Bonjour à tous,J'essai de faire un programme qui reçoit en paramètres le handle et le processus de l'application qui l'appelle ainsi que deux chemin ( Faire executer un programme sans afficher de Tform [ par JCLK ] Je souhaite faire un programme turbo pascal simple, qui tourne sans afficher de fenetres. Pouvez-vous me dire comment faire. Pour l'instant la seule s Arrêter l'execution du programme [ par oluha ] BonjourJ'ai créé une procédure qui me permet d'executer mes procédures stockées avec ISQL en shell (j'avais de gros problèmes de timeout que j'ai réso fermer un programme en stoppant son processus [ par li ] et bien toute est dans le non jaimerais depuis mon application fermer des processus ; celui de norton par exemple ou toute autre programme alors si qu Executer un programme ecrit avec delphi [ par kleline ] Bonjour,Apres moultes pérépéties avec delphi, j'ai terminé mon pti prog, et je souhaite l'installer sur une machine autre que celle sur laquelle il a gros problème de compatibilité !!! :s [ par alex_lecool85 ] Bonjour à tous. Mon problème est simple mais complique beaucoup la chose. J'ai fait un programme sous delphi 7 qui utilise une base de donnée avec l Executer application console apres les bords de l'ecran [ par Mxbug ] Yop je me disais si il est possible d'executer une application console apres les bords de l'ecran , c a dire que l'utilisateur ne voit pas qu'elle est Gérer les erreurs de conversion [ par Nargzul ] Bonjour, je m'entraine un peu au delphi, et je récupère des valeurs d'une form. Le programme devra effectuer des calculs chaque fois qu'une des cases emplacement du programme [ par Nargzul ] Bonjour Voila, j'ai fait une fonction pour copier un fichier(de configuration). donc je lui envoie mon premier emplacement et mon deuxième, et j'ai


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

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