Page 1 sur 1

Fermer une application

Publié : mar. 30/mai/2006 14:35
par SPH
Je me demandais comment fermer une application (comme internet explorer par exemple !) depuis un code PB ?

Publié : mar. 30/mai/2006 15:30
par Anonyme
Avec les APIs, cherche dans killprocess ou un truc dans le genre.

@+

Publié : mar. 30/mai/2006 15:32
par SPH
J'y connais que dalle en API !
Si quelqu'un avait un code tout fait........

Re: Fermer une application

Publié : mar. 30/mai/2006 15:51
par gnozal
SPH a écrit :Je me demandais comment fermer une application (comme internet explorer par exemple !) depuis un code PB ?
Quelques idées :
http://www.purebasic.fr/english/viewtopic.php?t=16193
http://www.purebasic.fr/english/viewtopic.php?t=20882

Publié : mar. 30/mai/2006 16:30
par SPH
cool, ca me va parfaitement !! =)

Publié : ven. 09/juin/2006 10:32
par Le psychopathe
Il suffit d'utiliser les nouvelles commandes dans Pure Basic 4 killprocess ou la lib de droopy.
@+

Publié : dim. 11/juin/2006 9:46
par Le Soldat Inconnu
Essai ceci, il te faut par contre le nom de la fenêtre pour cette exemple

Code : Tout sélectionner

; Auteur : Le Soldat Inconnu
; Version de PB : 4
; 
; Explication du programme :
; Ce code permet de fermer un programme à partir du nom de la fenêtre

Procedure.l FermeProgramme(nom.s)
  ; nom = nom de la fenêtre en cours
  ; valeur de retour de la procedure :
  ; >  1 = OK
  ; >  0 = Erreur d'envoi du message d'arrêt au logiciel
  ; > -1 = Le logiciel n'est pas en cours d'exécution
  
  resultat = 1
  winHwnd = FindWindow_(vbNullString, nom) ; Recherche de l'identifiant de la fenêtre
  If winHwnd <> 0
    If PostMessage_(winHwnd, #WM_CLOSE, 0, 0) = 0 ; Envoi d'un message de fermeture à la fenêtre
      resultat = 0
    EndIf
  Else
    resultat = -1
  EndIf
  ProcedureReturn
EndProcedure

RunProgram("Calc.exe")

Delay(3000)

FermeProgramme("Calculatrice")
Mais si tu as l'identifiant de la fenêtre, juste le postMessage_( suffit