Lost in the matrix

C/C++/C#/Java, Multithreading


Parfois, il nous arrive d'utiliser des composants "Bas Niveau" dans nos applications (utilisation du fax par exemple). Cependant, du fait que le code est souvent non-managé, il est difficile d'interpréter les erreurs remontées par ces composants. Par conséquent, voici une petite astuce à connaître :


Pour notre exemple, nous allons considérer que nous avons une application en .Net et que nous utilisons le composant FAXCOMLib pour envoyer un fax. Enfin, nous allons considérer que l'exception suivante est survenue lors de l'exécution du programme :


System.Runtime.InteropServices.COMException (0x80070102): Operation failed


1) De cette exception nous allons extraire le code de l'erreur : 0x80070102


2) Puis extraire les 4 chiffres suivant le chiffre 7 : 0x80070102


3) Convertir le nombre de la base 16 (hexadecimal) à la base 10 : 258


Astuce : utiliser un site pour éffectuer la conversion, tel que :
http://www.statman.info/conversions/hexadecimal.html


4) Ouvrir un invité de commandes (cmd.exe) et taper : "net helpmsg 258"


Cette commande affiche "The wait operation timed out."

Astuce : la liste des codes d'erreur de Windows est disponible à cette adresse :
http://msdn.microsoft.com/en-us/library/ms681382(v=vs.85).aspx



Les erreurs COM sont maintenant lisibles :)

0 commentaires:

Enregistrer un commentaire