Fermer une application

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Avatar de l’utilisateur
SPH
Messages : 4947
Inscription : mer. 09/nov./2005 9:53

Fermer une application

Message par SPH »

Je me demandais comment fermer une application (comme internet explorer par exemple !) depuis un code PB ?
Anonyme

Message par Anonyme »

Avec les APIs, cherche dans killprocess ou un truc dans le genre.

@+
Avatar de l’utilisateur
SPH
Messages : 4947
Inscription : mer. 09/nov./2005 9:53

Message par SPH »

J'y connais que dalle en API !
Si quelqu'un avait un code tout fait........

!i!i!i!i!i!i!i!i!i!
!i!i!i!i!i!i!
!i!i!i!
//// Informations ////
Intel Core i7 4770 64 bits - GTX 650 Ti
Version de PB : 6.12LTS- 64 bits
gnozal
Messages : 832
Inscription : mar. 07/déc./2004 17:35
Localisation : France
Contact :

Re: Fermer une application

Message 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
Avatar de l’utilisateur
SPH
Messages : 4947
Inscription : mer. 09/nov./2005 9:53

Message par SPH »

cool, ca me va parfaitement !! =)

!i!i!i!i!i!i!i!i!i!
!i!i!i!i!i!i!
!i!i!i!
//// Informations ////
Intel Core i7 4770 64 bits - GTX 650 Ti
Version de PB : 6.12LTS- 64 bits
Avatar de l’utilisateur
Le psychopathe
Messages : 764
Inscription : jeu. 03/mars/2005 19:23

Message par Le psychopathe »

Il suffit d'utiliser les nouvelles commandes dans Pure Basic 4 killprocess ou la lib de droopy.
@+
Le Soldat Inconnu
Messages : 4312
Inscription : mer. 28/janv./2004 20:58
Localisation : Clermont ferrand OU Olsztyn
Contact :

Message 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
Je ne suis pas à moitié Polonais mais ma moitié est polonaise ... Vous avez suivi ?

[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
Répondre