fermer une fenetre ouverte avec runprogram()
fermer une fenetre ouverte avec runprogram()
Bonjour,
J'aimerais savoir :
* s'il est possible de fermer une fenêtre ouverte avec un exe lancé au cours du programme avec RunProgram()
* Même genre de question : comment fermer une fenêtre contenant une application qui tourne (ex WebGadget ..) après un laps de temps déterminé sans tester #pb_event_closeWindow() (autrement dit sans que ce soit l'utilisateur qui intervient);
Merci
J'aimerais savoir :
* s'il est possible de fermer une fenêtre ouverte avec un exe lancé au cours du programme avec RunProgram()
* Même genre de question : comment fermer une fenêtre contenant une application qui tourne (ex WebGadget ..) après un laps de temps déterminé sans tester #pb_event_closeWindow() (autrement dit sans que ce soit l'utilisateur qui intervient);
Merci
-
- Messages : 446
- Inscription : mar. 25/mai/2010 17:24
- Localisation : Bnei Brak, Israel
Re: fermer une fenetre ouverte avec runprogram()
pour fermer l'exe tu fais killprogram
pour fermer la fenetre tu fais delay et closewindow
pour fermer la fenetre tu fais delay et closewindow
-
- Messages : 604
- Inscription : lun. 26/avr./2010 16:14
- Localisation : S 48° 52' 31'' / O 123° 23' 33''
Re: fermer une fenetre ouverte avec runprogram()
Vaut mieux éviter le delay dans cette situation qui va 'freezer' le programme et empêcher l'utilisateur d'interagir éventuellement.Parole De JOJO a écrit :pour fermer la fenetre tu fais delay et closewindow
Utiliser plutôt un timer...
Re: fermer une fenetre ouverte avec runprogram()
Pour killprogram(programme) je n'ai pas trouvé comment on peut connaitre la valeur de programme.
En ce qui concerne la solution delay suivi de closewindow ça ne peut pas marcher car l'application dans la fenêtre ne fonctionne plus à cause de Delay(), ( de même pour une procédure qui décompte le temps).
En ce qui concerne la solution delay suivi de closewindow ça ne peut pas marcher car l'application dans la fenêtre ne fonctionne plus à cause de Delay(), ( de même pour une procédure qui décompte le temps).
-
- Messages : 604
- Inscription : lun. 26/avr./2010 16:14
- Localisation : S 48° 52' 31'' / O 123° 23' 33''
Re: fermer une fenetre ouverte avec runprogram()
Comme toujours, il est utile de se référer à la doc :
Vas voir du côté de AddWindowTimer()
pierrep a écrit :Pour killprogram(programme) je n'ai pas trouvé comment on peut connaitre la valeur de programme.
Code : Tout sélectionner
ProgrammeOuvert = RunProgram(...)
KillProgram(ProgrammeOuvert)
???pierrep a écrit :...( de même pour une procédure qui décompte le temps).

Vas voir du côté de AddWindowTimer()
Re: fermer une fenetre ouverte avec runprogram()
[quote][/quote]ProgrammeOuvert = RunProgram(...)
KillProgram(ProgrammeOuvert)
C'est bien ce que je faisais , mais j'obtiens le message d'erreur : l'argument "program" spécifié n'est pas valide
Par contre pour AddWindowTimer () c'est parfait MERCI
KillProgram(ProgrammeOuvert)
C'est bien ce que je faisais , mais j'obtiens le message d'erreur : l'argument "program" spécifié n'est pas valide
Par contre pour AddWindowTimer () c'est parfait MERCI
-
- Messages : 604
- Inscription : lun. 26/avr./2010 16:14
- Localisation : S 48° 52' 31'' / O 123° 23' 33''
Re: fermer une fenetre ouverte avec runprogram()
Poste un exemple de ton code...
Re: fermer une fenetre ouverte avec runprogram()
En fait pour tester cette partie j'ai utilisé que les 2 fonctions utiles:
Où capture1 est un .exe obtenu avec Wink (logiciel de capture d'écran - Toutefois le .exe ne ferme pas la fenêtre à la fin de son exécution .. et c'est bien là mon problème )
Le .exe s'affiche correctement , mais PureBasic perd le contrôle de la suite ( et c'est apparemment KillProgram() qui le perturbe)
J'ai aussi essayé avec l'option #PB_Program_Wait Sans résultat
Code : Tout sélectionner
programme = RunProgram("C:\Wink\capture1" ,"","")
KillProgram(programme)
End
Le .exe s'affiche correctement , mais PureBasic perd le contrôle de la suite ( et c'est apparemment KillProgram() qui le perturbe)
J'ai aussi essayé avec l'option #PB_Program_Wait Sans résultat
Re: fermer une fenetre ouverte avec runprogram()
bon la solution a ton probleme
faut pouvoir supprimer la tache en ram
il doit bien y avoir une api pour faire ça
faut pouvoir supprimer la tache en ram
il doit bien y avoir une api pour faire ça

Dernière modification par Backup le lun. 07/mars/2011 11:05, modifié 2 fois.
Re: fermer une fenetre ouverte avec runprogram()
Idem avec la DroopyLib.
Code : Tout sélectionner
Pid=GetPidProcess("ProgAfermer.exe")
If Pid <> 0
KillProcess(Pid)
EndIf
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Re: fermer une fenetre ouverte avec runprogram()
Je viens d'essayer ta solution ... C'est super ça marche bien
T'es trop fort !
Merci
T'es trop fort !
Merci