Sauvegarder les erreurs d'exécution

Signaler
Messages postés
12
Date d'inscription
jeudi 23 avril 2009
Statut
Membre
Dernière intervention
17 avril 2011
-
Messages postés
332
Date d'inscription
lundi 29 septembre 2008
Statut
Membre
Dernière intervention
10 avril 2020
-
Bonjour,
Je suis entrain de développer un application en VB6.
Je voulais savoir comment sauvegarder les erreurs d'exécutions de mon application dans un fichier log.
Vous vous demander peut être pourquoi ??
Je veux savoir les erreurs que peuvent avoir mes clients pour pouvoir les corriger, en envoyant ce fichier automatiquement via internet vers ma base de donnée sur le web.
SVP, est ce que vous avez des idées ????

9 réponses

Messages postés
332
Date d'inscription
lundi 29 septembre 2008
Statut
Membre
Dernière intervention
10 avril 2020
1
Dans ta Procédure:
On error goto Erreur
ou
On error resum Next

...
Ton Code
...
' gestion d'erreur
Erreur:
If err then EnregistreCetteErreur
End Sub

Sub EnregistreCetteErreur(NumErr as long, _
StrDescription as string)

Open app.path & "\Erreur.Log" for Append as #1
Print #1, NumErreur & " - " & StrDescription
Close#1

Ens sub

seul celui qui reconnait ses fautes, Progress ..._bar
Galactus le Vrai !
Messages postés
41
Date d'inscription
dimanche 23 mars 2008
Statut
Membre
Dernière intervention
16 août 2013
1
Bonjour

C'est fait pour Access, mais transposable en VB6, car la gestion d'erreur est identique : Créer des rapports d'erreurs sous Access
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
47
salut,

en effet il y a de l'existant, il faut scruter les sources...

une parmi d'autres :
http://www.vbfrance.com/codes/GESTION-ERREURS-FICHIER-EXTERNE-MODULE-CLASSE_34278.aspx

++
Messages postés
12
Date d'inscription
jeudi 23 avril 2009
Statut
Membre
Dernière intervention
17 avril 2011

Bonjour,

Merci pour vos réponses , mais ce que je voulais c'est enregistrer les erreur dégagé par VB dans un fichier log.Je ne veux pas parcourir tous le code et mettre à chaque fois un numéro d'erreur et sa description, je veux enregistrer le code et la description générer pas VB dans un fichier LOG.
Est ce possible ??
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
47
si vb t'informe (ou informe l'utilisateur) d'un erreur critique c'est parce que c'est une "exception", c'est à dire une erreur non-gérée

si tu ne veux pas les gérer (que ce soit un traitement, un log, autre) malheureusement je ne connais pas de méthode pour... les gérer quand même ^^

le seul moyen est l'interception d'exception, donc la gestion d'erreur
sinon NON, pas possible

ps :
Je ne veux pas (...) mettre à chaque fois un numéro d'erreur et sa description


tu as mal lu le code proposé...
Messages postés
12
Date d'inscription
jeudi 23 avril 2009
Statut
Membre
Dernière intervention
17 avril 2011

Bonjour,
Merci pour vos réponses, je viens de résoudre le probléme
Voici le code :
'dans la procédure

On Error GoTo Erreur

code...

Erreur:
If Err Then
MsgBox ("erreur d'exécution")
Dim a As String
Dim b As String

a = Err.Number
b = Err.Description

Call EnregistreCetteErreur(a, b)

'la fonction EnregistreCetteErreur(a, b)

Sub EnregistreCetteErreur(NumErr As String, StrDescription As String)

Open App.Path & "\Erreur.Log" For Append As #1
Print #1, NumErr & " - " & StrDescription
Close #1

End Sub
Messages postés
12
Date d'inscription
jeudi 23 avril 2009
Statut
Membre
Dernière intervention
17 avril 2011

ReBonjour,

La prochaine étape de mon code est de sauvegarder le contenu du fichier log dans un base de donnée en ligne MYSQL, dans la base réservée pour le client.
Donc on aurait pour chaque client une base sous son nom, contenant une table de 2 champs, un champs pour le numéro d'erreur et un autre pour la description.
Normalement ça ce fais automatiquement, à chaque fois que le client se connecte, les données sont enregistré dans la base.
Des idées ??
Messages postés
12
Date d'inscription
jeudi 23 avril 2009
Statut
Membre
Dernière intervention
17 avril 2011

Saluuut,
Aucun de vous ne sais comment sauvegarder les données stocké dans le fichier log dans la base de données ??
Messages postés
332
Date d'inscription
lundi 29 septembre 2008
Statut
Membre
Dernière intervention
10 avril 2020
1
Vu que ta BDD est joignable via internet.

De mémoire et si je ne me trompe pas, il faut les logins pour y écrire.
Même avec un système automatique !
Donc:
1) login du client, qui ouvre sa BDD
2) Une commande avec un timer par exemple.
3) Bloquage du client X seconde)
4) Utiliser les infos de login pour renvoyer l'erreur, si le fichier.log existe, dans la base.
5) Libérer le client

Mais au lieu d'écrire un fichier dans le pc du client, autant écrire directement l'erreur dans la BDD avec le risque que l'erreur vienne de la BDD !

Je suis peut-être a coté de la question cette fois !

seul celui qui reconnait ses fautes, Progress ..._bar
Galactus le Vrai !