Gestion des erreurs

Résolu
aurelien2723 Messages postés 181 Date d'inscription jeudi 12 janvier 2006 Statut Membre Dernière intervention 26 janvier 2011 - 10 avril 2006 à 09:53
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 - 10 avril 2006 à 11:48
Salut!
Visual Basic 6
Je viens d'ajouter une gestion d'erreur a mon programme ou tout ce passer bien

Par exemple une fonction appelé au début du programme :

Function LireINI(Entete As String, Variable As String) As String
Dim Retour As String

On Error GoTo Erreur
fichier = App.Path & "" & App.EXEName & ".ini"
Retour = String(255, Chr(0))
LireINI = Left$(Retour, GetPrivateProfileString(Entete, ByVal Variable, "", Retour, Len(Retour), fichier))
Erreur:
MsgBox ("Placer le fichier G150.ini dans le même répertoire que l'exécutable")
Err.Clear
End Function


Mon soucis est qu'a chaque appel de la fonction, la popup apparée... Alors qu'il ne doit pas y avoir d'erreur puisque le code marchait niquel avant.

aidez moi svp :)

Merci! :)

7 réponses

jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
10 avril 2006 à 10:08
Salut,

il faut mettre un exit Function juste avant ta gestion d'erreur.
Ce qui donne

Function LireINI(Entete As String, Variable As String) As String
Dim Retour As String

On Error GoTo Erreur
fichier = App.Path & "" & App.EXEName & ".ini"
Retour = String(255, Chr(0))
LireINI = Left$(Retour, GetPrivateProfileString(Entete, ByVal Variable, "", Retour, Len(Retour), fichier))
Exit Function
Erreur:
MsgBox ("Placer le fichier G150.ini dans le même répertoire que l'exécutable")
Err.Clear
End Function
Et Voila
@+, Julien
Pensez: Moteur de Recherche, Réponse Acceptée
3
aurelien2723 Messages postés 181 Date d'inscription jeudi 12 janvier 2006 Statut Membre Dernière intervention 26 janvier 2011 1
10 avril 2006 à 10:16
cool merci :)
0
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
10 avril 2006 à 10:18
Re,

Pas de quoi

@+, Julien
Pensez: Moteur de Recherche, Réponse Acceptée
0
aurelien2723 Messages postés 181 Date d'inscription jeudi 12 janvier 2006 Statut Membre Dernière intervention 26 janvier 2011 1
10 avril 2006 à 10:38
J'ai une autre question concernant cette fonction.

Je voulais détecter si le fichier ini n'existe pas.

Donc je pensais mettre la gestion de cette erreur dans cette fonction mais celle ci ne déclenche pas d'erreur lorsque le fichier n'est pas présent.

Pourquoi svp? :)

Merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
10 avril 2006 à 10:46
Re,

Dans ce cas si tu veux juste teste si le fichier INI existe, fait simplement.

fichier = App.Path & "" & App.EXEName & ".ini"
If Dir(fichier) = "" Then MsgBox ("Placer le fichier G150.ini dans le même répertoire que l'exécutable")

@+, Julien
Pensez: Moteur de Recherche, Réponse Acceptée
0
aurelien2723 Messages postés 181 Date d'inscription jeudi 12 janvier 2006 Statut Membre Dernière intervention 26 janvier 2011 1
10 avril 2006 à 11:47
ok merci bien :) ca marche comme je veux :)
0
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
10 avril 2006 à 11:48
Salut,

Mais de rien nous sommes la pour ca.

En revanche n'oublie pas le réponse acceptée sur le ou les posts qui ont pu t'aider.

(si tu l'a fait pendant l'ecriture de ce message desole)

@+, Julien
Pensez: Moteur de Recherche, Réponse Acceptée
0
Rejoignez-nous