VERSION DE WINDOWS ET SORTIR UN ERRORLEVEL POUR LES SCRIPTS DOS
Utilisateur anonyme
-
7 janv. 2004 à 14:15
thierrydelepine
Messages postés521Date d'inscriptionmardi 24 décembre 2002StatutMembreDernière intervention11 septembre 2008
-
28 mai 2004 à 17:54
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
thierrydelepine
Messages postés521Date d'inscriptionmardi 24 décembre 2002StatutMembreDernière intervention11 septembre 20086 28 mai 2004 à 17:54
Je pense que tu n'a pas compris
le programme VB du zip ne cherche pas a obtenir le code de sortie d'un programme mais a generer un code de sortie lorsqu'il est quitté.
Ce code de sortie est récupéré dans un fichier de commande BAT et suivant le code de sortie cela me permet dans mon fichier de commande BAT de connaitre la version de windows, cela meut servir par exemeple dans les scripts de connexion a un domaine pour diffuser des patchs Windows qui sont souvent spécifique a un OS.
Donc je repete, dans ce code source, je ne veux pas recuperer le code de sortie d'un autre programme mais je veux que mon programme genere un code de sortie ou errorlevel pour DOS.
dans l'explication final de ce code source il y a un exemple de fichier BAT pour une utilisation en reel il suffit de remplacer les ECHO .... par des actions DOS genre : call KB852732.exe /quiet /norestart
et je n'ai pas compris ta question : " ??? c quoi le f**k??? "
gabchampagne
Messages postés216Date d'inscriptionmercredi 2 avril 2003StatutMembreDernière intervention 5 mai 2004 28 mai 2004 à 16:50
??? c quoi le f**k???
gabchampagne
Messages postés216Date d'inscriptionmercredi 2 avril 2003StatutMembreDernière intervention 5 mai 2004 28 mai 2004 à 16:50
C'est ceci pour obtenir le code de sortie d'un programme :
<
Declare Function GetExitCodeProcess Lib "kernel32" Alias "GetExitCodeProcess" (ByVal hProcess As Long, lpExitCode As Long) As Long
>
hProcess est le handle du process et lpExitCode est la varaible long qui va recevoir le code. Retourne 0 en cas de probs.
gabchampagne
Messages postés216Date d'inscriptionmercredi 2 avril 2003StatutMembreDernière intervention 5 mai 2004 28 mai 2004 à 16:50
C'est ceci pour obtenir le code de sortie d'un programme :
<
Declare Function GetExitCodeProcess Lib "kernel32" Alias "GetExitCodeProcess" (ByVal hProcess As Long, lpExitCode As Long) As Long
>
hProcess est le handle du process et lpExitCode est la varaible long qui va recevoir le code. Retourne 0 en cas de probs.
gabchampagne
Messages postés216Date d'inscriptionmercredi 2 avril 2003StatutMembreDernière intervention 5 mai 2004 28 mai 2004 à 16:46
LOL. 1 zip pour ça?. La chose interressante est ceci :
<
Declare Sub ExitProcess Lib "Kernel32" (ByVal uExitCode As Long)
>
Cette api permet de fermer le programme en lui fesant retourner un numéro qu'on récupère :
IF ERRORLEVEL # GOTO "étiquette dans la batch"
On doit probablement pouvoir obtenir ce code dans VB à l'aide de CreateProcess ou autre...
gabchampagne
Messages postés216Date d'inscriptionmercredi 2 avril 2003StatutMembreDernière intervention 5 mai 2004 28 mai 2004 à 16:46
LOL. 1 zip pour ça?. La chose interressante est ceci :
<
Declare Sub ExitProcess Lib "Kernel32" (ByVal uExitCode As Long)
>
Cette api permet de fermer le programme en lui fesant retourner un numéro qu'on récupère :
IF ERRORLEVEL # GOTO "étiquette dans la batch"
On doit probablement pouvoir obtenir ce code dans VB à l'aide de CreateProcess ou autre...
thierrydelepine
Messages postés521Date d'inscriptionmardi 24 décembre 2002StatutMembreDernière intervention11 septembre 20086 8 janv. 2004 à 18:42
28 mai 2004 à 17:54
le programme VB du zip ne cherche pas a obtenir le code de sortie d'un programme mais a generer un code de sortie lorsqu'il est quitté.
Ce code de sortie est récupéré dans un fichier de commande BAT et suivant le code de sortie cela me permet dans mon fichier de commande BAT de connaitre la version de windows, cela meut servir par exemeple dans les scripts de connexion a un domaine pour diffuser des patchs Windows qui sont souvent spécifique a un OS.
Donc je repete, dans ce code source, je ne veux pas recuperer le code de sortie d'un autre programme mais je veux que mon programme genere un code de sortie ou errorlevel pour DOS.
dans l'explication final de ce code source il y a un exemple de fichier BAT pour une utilisation en reel il suffit de remplacer les ECHO .... par des actions DOS genre : call KB852732.exe /quiet /norestart
et je n'ai pas compris ta question : " ??? c quoi le f**k??? "
28 mai 2004 à 16:50
28 mai 2004 à 16:50
<
Declare Function GetExitCodeProcess Lib "kernel32" Alias "GetExitCodeProcess" (ByVal hProcess As Long, lpExitCode As Long) As Long
>
hProcess est le handle du process et lpExitCode est la varaible long qui va recevoir le code. Retourne 0 en cas de probs.
28 mai 2004 à 16:50
<
Declare Function GetExitCodeProcess Lib "kernel32" Alias "GetExitCodeProcess" (ByVal hProcess As Long, lpExitCode As Long) As Long
>
hProcess est le handle du process et lpExitCode est la varaible long qui va recevoir le code. Retourne 0 en cas de probs.
28 mai 2004 à 16:46
<
Declare Sub ExitProcess Lib "Kernel32" (ByVal uExitCode As Long)
>
Cette api permet de fermer le programme en lui fesant retourner un numéro qu'on récupère :
IF ERRORLEVEL # GOTO "étiquette dans la batch"
On doit probablement pouvoir obtenir ce code dans VB à l'aide de CreateProcess ou autre...
28 mai 2004 à 16:46
<
Declare Sub ExitProcess Lib "Kernel32" (ByVal uExitCode As Long)
>
Cette api permet de fermer le programme en lui fesant retourner un numéro qu'on récupère :
IF ERRORLEVEL # GOTO "étiquette dans la batch"
On doit probablement pouvoir obtenir ce code dans VB à l'aide de CreateProcess ou autre...
8 janv. 2004 à 18:42
en regardant le code du Zip vous pouvez meme savoir le service pack pour les noyaux NT ( la msgbox en commentaire )
8 janv. 2004 à 18:37
7 janv. 2004 à 14:48
il s'agit bien de programmation VB.
NB: ton commentaire est inutile et n'apporte pas de solutions nouvelles au problème posé plusieurs fois dans le forum.
7 janv. 2004 à 14:15