Comment faire un (error trap) piège à erreur? aidez moi svp [Résolu]

zwarul 35 Messages postés vendredi 4 février 2005Date d'inscription 3 août 2008 Dernière intervention - 26 août 2005 à 11:26 - Dernière réponse : zwarul 35 Messages postés vendredi 4 février 2005Date d'inscription 3 août 2008 Dernière intervention
- 26 août 2005 à 12:05
bon voila j'ai fait un petit soft qui fait des captures d'écran à répétition et qui les analyse. Mais il arrive que j'obtienne une message d'erreur du type:(l'erreur d'exécution 521 impossible d'ouvrir le presse papier!) (sachez que le logiciel tourne en boucle et que ce message apparait complétement au hasard: défoi au bout de dix minutes comme au bout de 5 heurs alors???)
et j'ai essayer de sovoir pourquoi il y avait ce problème mais avec peu de succé et j'ai ensuite, trouvé ça:

Can't open Clipboard (Error 521)
Specifics

The Clipboard has already been opened by another application. This error has the following cause and solution:

Another application is using the Clipboard and won't release it to your application.
Set an error trap for this situation in your code and provide a message box with Retry and Cancel buttons to allow the user to try again after a short pause


sur msdn en accés libre

il me conseille donc d'utiliser un error trap, un piège a erreur mais je ne sai absolument pas comment mi prendre (faut dire que je débute juste) donc si quelqu'un pouvait me donner quelques conseils se serait vraiment trop cool car sinon mon soft ne servira a rien
Afficher la suite 

6 réponses

crenaud76 4172 Messages postés mercredi 30 juillet 2003Date d'inscription 9 juin 2006 Dernière intervention - 26 août 2005 à 11:55
+3
Utile
Alors allons-y pour du VB6 ...

On Error Goto ErrHdlr
... ici tu places la ou les lignes de code qui risque de planter
Exit Function ' ou Exit Sub selon le cas
ErrHdlr:
... ici tu places le code a executer en cas d'erreur ou rien du tout si tu ne veux rien faire de spécial en cas d'erreur ...
End Function ' ou End Sub selon le cas
Cette réponse vous a-t-elle aidé ?  
cs_cbu 394 Messages postés mercredi 30 janvier 2002Date d'inscription 4 novembre 2009 Dernière intervention - 26 août 2005 à 12:04
+3
Utile
Si tu débutes, je t'ai fais une procédure ou tu comprendras tout bien



Private Sub AnError()

'////////////////////////////////////

'/ Procédure qui Génère une erreur

'/ Avec gestion d'erreur

'////////////////////////////////////

Dim lintZero As Integer



On Error GoTo FlagError



lintZero = 0

lintZero = 8/lintZero



ResumeError:

MsgBox "Ici on passe toujours Erreur ou pas Erreur ;)" & vbCrLf & Err.Description, vbCritical

Exit Sub



FlagError:

MsgBox "[debug : AnError]" & vbCrLf & Err.Description, vbCritical

Resume ResumeError



End Sub



Bye bye
Cette réponse vous a-t-elle aidé ?  
crenaud76 4172 Messages postés mercredi 30 juillet 2003Date d'inscription 9 juin 2006 Dernière intervention - 26 août 2005 à 11:31
0
Utile
LA méthode vca dépendre de la version de VB que tu utilises : VB6, VB.NET, VBA ?

Christophe.
zwarul 35 Messages postés vendredi 4 février 2005Date d'inscription 3 août 2008 Dernière intervention - 26 août 2005 à 11:50
0
Utile
c'est vb6 merci
cs_cbu 394 Messages postés mercredi 30 janvier 2002Date d'inscription 4 novembre 2009 Dernière intervention - 26 août 2005 à 12:05
0
Utile
Oui une division par 0 il aime pas trop ...
zwarul 35 Messages postés vendredi 4 février 2005Date d'inscription 3 août 2008 Dernière intervention - 26 août 2005 à 12:05
0
Utile
merci!!!!!!!!!!!!!!!!

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.