IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 Delphi Discussion :

Shellexecute pour ouvrir


Sujet :

Delphi

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 71
    Points : 59
    Points
    59
    Par défaut Shellexecute pour ouvrir
    Il y a shellexecute pour ouvrir un .exe mais y a t'il une fonction

    pour fermer un programme ???

    Merci pour votre réponse

  2. #2
    Rédacteur/Modérateur
    Avatar de Andnotor
    Inscrit en
    Septembre 2008
    Messages
    5 812
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5 812
    Points : 13 527
    Points
    13 527
    Par défaut
    Non, il n'y a pas de fonction inverse de ShellExecute !
    Trouve la fenêtre principale par un FindWindow et envoye-lui le message WM_CLOSE.

    Sinon, exécute le programme par CreateProcess et dans ce cas, tu pourras utiliser TerminateProcess.

  3. #3
    Membre chevronné
    Avatar de Droïde Système7
    Homme Profil pro
    Inscrit en
    Septembre 2003
    Messages
    2 287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 2 287
    Points : 1 934
    Points
    1 934
    Par défaut
    Salut,

    Si j'ai bien saisi le sens de ta question ; suffit de passer par un FindWindows() afin de trouver l'Handle de l'appli cible, et d'ensuite la killer via un :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SendMessage(H, WM_CLOSE, 0, 0);
    @+

    Edit : arfff ! grillé par mon camarade Andnotor

  4. #4
    Membre expérimenté
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    2 453
    Détails du profil
    Informations personnelles :
    Âge : 71
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 2 453
    Points : 1 337
    Points
    1 337
    Par défaut
    Bonjour à toutes et à tous,

    @ Cre3000, essaye ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    procedure TForm1.Button1Click(Sender: TObject);
    Var aHandle : THandle;
    Begin
      aHandle := FindWindow('tonapplication', Nil);
    If aHandle > 0 Then  Begin
      SendMessage(aHandle, WM_CLOSE, 0, 0);
      Application.Terminate;
    End;
     
    end;
    @+,

    Cincap

  5. #5
    Membre averti Avatar de archonte
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    342
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 342
    Points : 394
    Points
    394
    Par défaut
    La indique ceci ou cela ...



    Edit : Bien Grillé ! Et voilà comment une petite absence de 30 min fait passer un message à la dernière place !!!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. une astuce pour ouvrir la base de registre d'un autre disque
    Par bouassouille dans le forum Windows XP
    Réponses: 4
    Dernier message: 07/10/2005, 00h53
  2. Mot de Passe sur un bouton de com. pour ouvrir un formulaire
    Par Droopynnette dans le forum Access
    Réponses: 1
    Dernier message: 29/09/2005, 11h38
  3. [Batch] Tit prog pour ouvrir une page internet
    Par toniovitch dans le forum Windows
    Réponses: 1
    Dernier message: 17/09/2005, 16h20
  4. API pour ouvrir une BD Access
    Par GofAcid dans le forum Access
    Réponses: 2
    Dernier message: 15/12/2004, 19h25
  5. Réponses: 2
    Dernier message: 29/05/2002, 20h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo