Page 1 sur 1

Probleme avec "KillProgram()" [Résolu]

Publié : mer. 30/mars/2011 13:52
par johann77
Le problème :
Bonjour,

Je voudrais créer un Programme, une sorte de "panel de commandes" pour un jeu. Dans ce programme j'aimerai y incorporer une commande KillProgram(Programme) et/ou CloseProgram(Programme), les 2 demandent les mêmes conditions. Mais malheureusement je n'arrive pas a les utiliser, c'est principalement le paramètre Programme qui me pose un problème. Je vais vous donner un exemple de ce que j'écris :

Code : Tout sélectionner

1  If EvenGadget = #Button_1
2  prog = RunProgram("C:\ ...")
3  Else
4     If EventGadget = #Button_2
5  KillProgram(prog)
6    EndIf
7   EndIf


Le logiciel me dit : L'argument "Program" spécifié n'est pas valide.

Donc voila, j'aimerai un peu d'aide .. Je ne comprend pas vraiment l'aide de PureBasic ==> http://www.purebasic.com/french/documen ... ogram.html
Merci d'avance.

Solution, je remercie les participants (exemple avec notepad):

Code : Tout sélectionner

;- Window Constants
   Enumeration
   #Window_0
   EndEnumeration
   
   ;- Gadget Constants
   Enumeration
   #Button_ouvrir
   #Button_fermer
   EndEnumeration
   
   If OpenWindow(#Window_0, 220, 0, 200, 70, "",  #PB_Window_SystemMenu | #PB_Window_TitleBar | #PB_Window_ScreenCentered )
      ButtonGadget(#Button_ouvrir, 10, 10, 180, 20, "ouvrir notepad", #PB_Button_Default | #PB_Button_Toggle)
      ButtonGadget(#Button_fermer, 10, 40, 180, 20, "Fermer notepad", #PB_Button_Default | #PB_Button_Toggle)
   EndIf
   
   Repeat
      EventID = WaitWindowEvent()
      If EventID = #PB_Event_Gadget
         Select EventGadget()
         Case #Button_ouvrir
            notepad = RunProgram("notepad.exe", "", "", #PB_Program_Open|#PB_Program_Read)
         Case #Button_fermer
            If notepad <> 0
               KillProgram(notepad)
            EndIf
         EndSelect
      EndIf
   Until EventID = #PB_Event_CloseWindow

Re: [PureBasic] Probleme avec "KillProgram()"

Publié : mer. 30/mars/2011 14:28
par Ar-S
Bonjour,
Essaye d'utiliser l'outil de recherche du Forum, en tapant simplement killprogram j'ai trouvé un code d'exemple plus complet et fonctionnel.

Exemple de Venom pour ouvrir/fermer le notepad
http://www.purebasic.fr/french/viewtopi ... am#p127069


P.S : ton [PureBasic] dans le titre m'a fait rire :wink:

Re: [PureBasic] Probleme avec "KillProgram()"

Publié : mer. 30/mars/2011 14:50
par johann77
Ok merci bien, je test ca et je vous tient au courant.

PS : Ça marche oui, mais c'est pas exactement ce que j'attendais. Je voudrais un bouton qui lance le programme et un autre qui le ferme. J'ai essayé de le modifier mais comme je suis un peu "noob" en programmation je ne trouve pas ^^'

PS' : Pour le titre t'as fait rire ?

Re: [PureBasic] Probleme avec "KillProgram()"

Publié : mer. 30/mars/2011 15:59
par DarkIchigo
Voila si j'ai bien compris tu veux la même chose avec 2 boutons différents donc je t'ai modifié le code de Venom

Code : Tout sélectionner

	;- Window Constants
	Enumeration
	#Window_0
	EndEnumeration
	 
	;- Gadget Constants
	Enumeration
	#Button_ouvrir
	#Button_fermer
	EndEnumeration
	 
	If OpenWindow(#Window_0, 220, 0, 200, 70, "",  #PB_Window_SystemMenu | #PB_Window_TitleBar | #PB_Window_ScreenCentered )
		ButtonGadget(#Button_ouvrir, 10, 10, 180, 20, "ouvrir notepad", #PB_Button_Default)
		ButtonGadget(#Button_fermer, 10, 40, 180, 20, "Fermer notepad", #PB_Button_Default)
	EndIf
	 
	Repeat
		EventID = WaitWindowEvent()
		If EventID = #PB_Event_Gadget
			Select EventGadget()
			Case #Button_ouvrir
				notepad = RunProgram("notepad.exe", "", "", #PB_Program_Open|#PB_Program_Read)
			Case #Button_fermer
				If notepad <> 0
					KillProgram(notepad)
				EndIf
			EndSelect
		EndIf
	Until EventID = #PB_Event_CloseWindow
En espérant que ce soit ce que tu cherchais.

Re: [PureBasic] Probleme avec "KillProgram()"

Publié : mer. 30/mars/2011 18:40
par venom
Dit DarkIchigo

dans ton code ligne 13 et 14 enlève #PB_Button_Toggle cette fonction n'est plus utile dans ton code :wink:







@++

Re: [PureBasic] Probleme avec "KillProgram()"

Publié : mer. 30/mars/2011 19:12
par Ar-S
johann77 a écrit : PS' : Pour le titre t'as fait rire ?
bah c'est forcément concernant purebasic sinon c'est que tu t'es trompé de forum :D

Re: [PureBasic] Probleme avec "KillProgram()"

Publié : mer. 30/mars/2011 20:08
par johann77
Merci beaucoup a tous, DarkIchigo c'est exactement ça.

Merci à Venom pour ton code et à Ar-S :)

PS : Pour le [PureBasic] c'est une habitude. Je l'ai enlevé, ajouté résolu et la solution dès mon 1e post.

Re: Probleme avec "KillProgram()" [Résolu]

Publié : mer. 30/mars/2011 20:14
par Ar-S
Aucun soucis c'est parfait ;)

Re: [PureBasic] Probleme avec "KillProgram()"

Publié : jeu. 31/mars/2011 12:51
par DarkIchigo
venom a écrit :Dit DarkIchigo

dans ton code ligne 13 et 14 enlève #PB_Button_Toggle cette fonction n'est plus utile dans ton code :wink:


@++
Lol merci, je l'avais zappé lui :)

J'ai édit mon post