Page 2 sur 2
Publié : mar. 04/mai/2004 19:40
par Flype
ce que windows peut liberer il le fait, il s'ameliore bcp de ce cote là
en fait un "kill" vire l'exe de la memoire mais les ressources allouées dynamiquement par le prog pose plus de probleme
Publié : mar. 04/mai/2004 20:23
par filperj
Ca veut dire que le ressource tracking de windows est moins au point que celui de PB
En tout cas merci de ces précisions, je me coucherai un peu moins con ce soir

Publié : ven. 28/mai/2004 22:10
par gansta93
Salut tout le monde,
J'suis un peu hors-sujet, mais avec quoi peut-on utiliser les codes renvoyés lors d'un end?
Du errorlevel, ou quoi sinon pourait récupérer des codes de sortie?
Publié : ven. 28/mai/2004 22:56
par fweil
Gansta93,
Normalement tu fais :
End [ExitCode]
Selon la doc ça fonctionne.
Moi j'ai pas testé là, mais sous Unix c'est comme ça qu'on utilise le code de sortie depuis un prog PureBasic.
Slts
Publié : ven. 28/mai/2004 23:07
par gansta93
Oui ça j'ai compris mais je veux savoir avec quoi on peut récupèrer ce code de sortie.
Avec du Errorlevel dans un batch, ou alors y a-t-il un truc que je n'ai pas saisie?
Publié : ven. 28/mai/2004 23:11
par fweil
Ben oui dans un batch. Au niveau DOS. Sinon il y a aussi GetExitCodeProcess_() au niveau API pour faire la même chose entre applications Windows.
Publié : ven. 28/mai/2004 23:18
par gansta93
Et quels sont les paramaîtres de GetExitCodeProcess_()?
encore des syntaxes à la micro$oft du genre GetExitCodeProcess_(1321321312FFFB3D,3FF32FFB","Je bug je suis windows")

ça peut aider.
Publié : sam. 29/mai/2004 1:37
par fweil
La doc dit :
BOOL GetExitCodeProcess(
HANDLE hProcess, // handle to the process
LPDWORD lpExitCode // address to receive termination status
);
Il faut donc placer le handle du process concerné et un pointeur vers une variable qui récupère le code de sortie.
GetExitCodeProcess_(hProcess, @ExitCode)
Slts
Publié : sam. 29/mai/2004 2:31
par Chris
J'avais fait ça, il y a quelques temps. Si ça peut te servir !!
Code : Tout sélectionner
;- Solution avec CreateProcess_()
si.STARTUPINFO
pi.PROCESS_INFORMATION
si\cb = SizeOf(STARTUPINFO)
CreateProcess_("C:\Windows\Notepad.exe",#Null,#Null,#Null,#False,0,#Null,#Null,@si, @pi)
hProcess = pi\hProcess
;- Solution avec RunProgram()
;hProcess = RunProgram("Notepad.exe")
GetExitCodeProcess_(hProcess,@lpExitCode)
Delay(3000); Dans 3 secondes, notepad se ferme
TerminateProcess_(hProcess,lpExitCode)
Chris

Publié : sam. 29/mai/2004 8:31
par gansta93
Ah ça y est je saisis.
Merci