IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

Visual C++ Discussion :

HRESULT User Friendly


Sujet :

Visual C++

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre confirm� Avatar de Thor Tillas
    Inscrit en
    Octobre 2006
    Messages
    113
    D�tails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 113
    Par d�faut HRESULT User Friendly
    Hello,

    Je me demandais s'il existait une possibilit�, mise � part un m�ga switch, d'afficher un text � la place du code d'erreur HRESULT...

    Je sais que visual studio fourni un outil qui permet de le faire, il doit donc surement y avoir une liste � quelque part et surement qu'une petite fonction permet de l'atteindre... sinon je vais passer ma journ�e � taper des Merci d'avance pour vos r�ponses...

  2. #2
    Membre �clair� Avatar de ZaaN
    Inscrit en
    Novembre 2005
    Messages
    819
    D�tails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 819
    Par d�faut
    salut,

    j ai vu une classe qui a deja ce megaswitch sous code project au cas ou...

    mot cl� : GetLastError()

  3. #3
    Expert �minent
    Avatar de M�dinoc
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par d�faut
    J'ai cherch�, je n'ai rien vu pour les HRESULT.

    Il y a des facilit�s pour les erreurs Win32, mais les HRESULT ne sont pas aussi bien d�finis, h�las.
    Il y a m�me une plage pour laquelle les valeurs peuvent se chevaucher selon les diff�rentes interfaces... (deux HRESULT diff�rents pour deux interfaces diff�rentes peuvent voir la m�me valeur).
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  4. #4
    Membre confirm� Avatar de Thor Tillas
    Inscrit en
    Octobre 2006
    Messages
    113
    D�tails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 113
    Par d�faut
    Citation Envoy� par M�dinoc
    ...
    Il y a m�me une plage pour laquelle les valeurs peuvent se chevaucher selon les diff�rentes interfaces... (deux HRESULT diff�rents pour deux interfaces diff�rentes peuvent voir la m�me valeur).

    voil� pourquoi j'ai des messages qui correspondent pas forc�ment � mon erreur... genre j'ai pas de cassette dans la camera que je pilote � distance et l'erreur HRESULt que je recois correspond � : "No more connections can be made to this remote computer at this time because there are already as many connections as the computer can accept. "
    Je pensais que c'�tait le programmeur de l'api que j'utilise qui c'�tait plant� dans ses retours de fonction...

  5. #5
    Expert �minent
    Avatar de M�dinoc
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par d�faut
    En fait, le truc est assys primitif : La classe tente un FormatMessage() directement sur le HRESULT (il faut croire que Win32 impl�mente �a de base, puisque les HRESULT d'erreur ont toujours le bit de poits fort vrai, ce qui n'est jamais le cas des erreurs) et affiche un message plus g�n�rique en cas d'�chec.

    C'est pour cela qu'il y a g�n�ralement une doc des diff�rents HRESULT que peut retourner une fonction, puisqu'il n'y a rien qu'on puisse faire sans la liste complete (sauf retourner E_UNEXPECTED)...

    Normalement, il y a quelque part une liste de defines qui donne diff�rents HRESULTs.
    Par contre, la valeur que tu as post�e (0x80070001) n'existe pas dans les headers de Windows. Il est toutefois possible qu'elle soit d�finie quelque part dans les headers du SDK de ta cam�ra s'il y en a un...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  6. #6
    Membre confirm� Avatar de Thor Tillas
    Inscrit en
    Octobre 2006
    Messages
    113
    D�tails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 113
    Par d�faut
    En fait c'est assez simple...

    le code ci dessous devrait r�pondre aux questions, enfin j'esp�re... je l'ai trouv� � cette adresse : http://meat.net/2005/11/hresult-message/


    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    //pour le _com_error
    #include <comdef.h>
    //pour le HRESULT
    #include <windows.h>
     
    std::wstring HRToWS(HRESULT res)
    {
      std::wstring ws (_com_error(res).ErrorMessage());
      return ws;
    }
    Voil� en esp�rant que ca serve � quelqu'un d'autre

    @ZaaN : Je crois que je suis un peu boulet, mais j'ai pas trouv� ton lien... je voulais juste v�rifier s'il y avait une autre solution... culture g�n�rale quoi. Si par hasard t'arrive � me donner un lien direct je pourrai y jeter un oeil et faire une petite synth�se dans ce post

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. Utilisation user friendly
    Par minisys dans le forum BIRT
    R�ponses: 2
    Dernier message: 25/02/2011, 10h46
  2. recherche user friendly sur une table access
    Par vanessa2303 dans le forum IHM
    R�ponses: 1
    Dernier message: 01/07/2008, 07h05
  3. R�ponses: 2
    Dernier message: 23/05/2008, 18h13
  4. [Langage] MaJ d'une carte, user-friendly, sans retouche graphique
    Par jaybebop dans le forum G�n�ral Conception Web
    R�ponses: 2
    Dernier message: 10/05/2006, 10h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo