Bonjour,

Je fais un programme en VB6, sous Windows XP.
J'aimerais retourner une valeur à la fin du programme pour savoir si celui-ci c'est bien dérouler.

En comparaison, je voudrait faire un return 0 ou return 1 comme on fait en C à la fin de la fonction principal.
Après plusieurs recherches, j'ai lu qu'il fallait utiliser la variable ERRORLEVEL.
Je fais donc
echo %ERRORLEVEL%
pour connaitre la valeur de retour du dernier programme utiliser.
J'ai vérifier en C, cela marche bien

Pour le VB6, j'ai lu qu'il fallait utiliser ExitProcess.
Or, cela ne marche pas
Je vous met mon code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
Private Declare Sub ExitProcess Lib "kernel32" (ByVal uExitCode As Long)
 
Private Sub Form_Load()
    ExitProcess 9
End Sub
Ma variable ERRORLEVEL reste à zéro

J'ai aussi testé la solution de coin :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
 
Private Declare Function GetCurrentProcess Lib "kernel32" () As Long
Private Declare Function TerminateProcess Lib "kernel32" (ByVal hProcess As Long, ByVal uExitCode As Long) As Long
 
Private Sub Form_Load()
 
  Dim lRet As Long
  Dim hProcess As Long
  hProcess = GetCurrentProcess
  lRet = TerminateProcess(hProcess, 2)
End Sub
pareil, errorlevel reste à zéro

Help me please
Y'a t'il quelque chose de spécial à faire? ajouter une référence?

Merci