Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1362 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  Utilisation des composants Indy 9 sous C++ Builder

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Utilisation des composants Indy 9 sous C++ Builder

n°891743
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 06-11-2004 à 11:55:35  profilanswer
 

plop,
 
j'ai installé Indy 9 pour CPPB. dedans, y'a une classe TIdHashMessageDigest5 qui est sensée représenter un encodage MD5.
 
dans cette classe, y'a une méthode HashValue(const AnsiString ASrc), qui, dans Delphi, renvoie un tableau de 4 int (T4x4LongWordRecord) représentant le MD5 de l'AnsiString passée en argument.
 
je veux utiliser cette classe dans C++ Builder. 1er problème : la doc d'Indy 9 ne concerne que Delphi, donc si je connais pas Delphi, c'est DMC !
 
je vais donc consulter le .hpp dans lequel est déclaré la classe, et je m'aperçois que la méthode HashValue est déclarée comme ceci :
 

Code :
  1. unsigned __fastcall HashValue(const AnsiString ASrc)/* overload */;


 
vous voyez le bins ? cette fonction est sensée me renvoyer un tableau de 4 int dans Delphi, et dans C++ Builder, elle me renvoie un int non signé !!
 
voici la déclaration de la classe TIdHash128, dont hérite TIdHashMessageDigest5 :
 

Code :
  1. typedef unsigned T4x4LongWordRecord[4];
  2. class DELPHICLASS TIdHash128;
  3. class PASCALIMPLEMENTATION TIdHash128 : public TIdHash
  4. {
  5. typedef TIdHash inherited;
  6. public:
  7. /*         class method */ static AnsiString __fastcall AsHex(TMetaClass* vmt, const unsigned * AValue);
  8. unsigned __fastcall HashValue(const AnsiString ASrc)/* overload */;
  9. virtual unsigned __fastcall HashValue(Classes::TStream* AStream) = 0 /* overload */;
  10. public:
  11. #pragma option push -w-inl
  12. /* TObject.Create */ inline __fastcall TIdHash128(void) : TIdHash() { }
  13. #pragma option pop
  14. #pragma option push -w-inl
  15. /* TObject.Destroy */ inline __fastcall virtual ~TIdHash128(void) { }
  16. #pragma option pop
  17. };


 
on voit que le type T4x4LongWordRecord est déclaré, mais qu'il n'est pas utilisé !??!  
 
Question : je fais comment pour utiliser cette foutue fonction HashValue, si elle ne me renvoie pas ce qu'elle est sensée me renvoyer ??


---------------
J'ai un string dans l'array (Paris Hilton)
mood
Publicité
Posté le 06-11-2004 à 11:55:35  profilanswer
 

n°891771
chrisbk
-
Posté le 06-11-2004 à 12:37:57  profilanswer
 

[:icon12]

n°891795
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 06-11-2004 à 12:50:21  profilanswer
 

[:sisicaivrai]


---------------
J'ai un string dans l'array (Paris Hilton)
n°891796
chrisbk
-
Posté le 06-11-2004 à 12:50:54  profilanswer
 

b'indy donc, quel bide, ce topic

n°891797
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 06-11-2004 à 12:51:42  profilanswer
 

c'est le wk end :o
à partir de lundi, je croulerais sous les réponses :o


---------------
J'ai un string dans l'array (Paris Hilton)
n°891800
stiffler
Lâche mon profil putain ! :o
Posté le 06-11-2004 à 12:53:33  profilanswer
 

Avec indy c'est un peu la dernière croisade ! [:dawa]


---------------
I'm failing as fast as I can !! -- Vision-360, vos photos en grand format -- !! -- Les nouilles c'est bon
n°891804
Lam's
Profil: bas.
Posté le 06-11-2004 à 12:58:03  profilanswer
 

Harkonnen a écrit :

c'est le wk end :o
à partir de lundi, je croulerais sous les réponses :o


Alors il faut garder le topic Indy visible jusqu'à Lundi...

n°891805
chrisbk
-
Posté le 06-11-2004 à 12:58:31  profilanswer
 

arretez de pourrir son topic, bande d'indyot :o

n°891806
Lam's
Profil: bas.
Posté le 06-11-2004 à 12:59:21  profilanswer
 

chrisbk a écrit :

arretez de pourrir son topic, bande d'indyot :o


Tu veux dire qu'on est des Indysirables ?

n°891808
stiffler
Lâche mon profil putain ! :o
Posté le 06-11-2004 à 13:01:05  profilanswer
 

Lam's a écrit :

Tu veux dire qu'on est des Indysirables ?


Essaye de rester indyfférent a ses insultes ! [:dawao]


---------------
I'm failing as fast as I can !! -- Vision-360, vos photos en grand format -- !! -- Les nouilles c'est bon
mood
Publicité
Posté le 06-11-2004 à 13:01:05  profilanswer
 

n°891809
chrisbk
-
Posté le 06-11-2004 à 13:03:12  profilanswer
 

c'esr rindycule tout ca

n°891814
stiffler
Lâche mon profil putain ! :o
Posté le 06-11-2004 à 13:15:13  profilanswer
 

chrisbk a écrit :

c'esr rindycule tout ca

plutôt Indycent ! [:dawao]


---------------
I'm failing as fast as I can !! -- Vision-360, vos photos en grand format -- !! -- Les nouilles c'est bon
n°891823
Lam's
Profil: bas.
Posté le 06-11-2004 à 13:33:49  profilanswer
 

Plus sérieusement, essaye de caster ta fonction pour faire semblant qu'elle retourne une structure qui contient 4 entiers, plutôt qu'un tableau d'entier.  
 
Genre:

Code :
  1. struct Ret { int a,b,c,d; };
  2. Ret (TIdHash128 ::*hashCool)(AnsiString c);
  3. hashCool = &TIHas128::Hash;
  4. Ret x = hashCool("Hello World" );

n°891838
uriel
blood pt.2
Posté le 06-11-2004 à 14:39:50  profilanswer
 

tout ca pour un plugin a la con [:petrus75]


---------------
IVG en france
n°891883
verdoux
And I'm still waiting
Posté le 06-11-2004 à 15:38:24  profilanswer
 

Pourquoi tu le fais pas en assembleur SSE ton hash MD5 plutôt qu'en Delphi ?

n°892032
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 06-11-2004 à 19:33:47  profilanswer
 

Lam's a écrit :

Plus sérieusement, essaye de caster ta fonction pour faire semblant qu'elle retourne une structure qui contient 4 entiers, plutôt qu'un tableau d'entier.  
 
Genre:

Code :
  1. struct Ret { int a,b,c,d; };
  2. Ret (TIdHash128 ::*hashCool)(AnsiString c);
  3. hashCool = &TIHas128::Hash;
  4. Ret x = hashCool("Hello World" );




Effectivement, ça marche bien, mais bon, j'ai préféré adapter la fonction que j'avais faite en pur Win 32 :/


---------------
J'ai un string dans l'array (Paris Hilton)
n°892034
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 06-11-2004 à 19:34:41  profilanswer
 

verdoux a écrit :

Pourquoi tu le fais pas en assembleur SSE ton hash MD5 plutôt qu'en Delphi ?

Je le fais pas en Delphi grands dieux, mais en C++, vade retro :o
(et vu comme je me fais chier avec ces putains de composants, je suis sur que j'aurais mis moins de temps en assembleur :sweat:)


---------------
J'ai un string dans l'array (Paris Hilton)

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  Utilisation des composants Indy 9 sous C++ Builder

 

Sujets relatifs
[batch] saisie param + appel ftp + utilisation ds ftp du param saisiUtilisation d'un jar situe a l'interieur d'un autre jar
Lib pdf gratuite pour utilisation pro? [trouvé]Utilisation d'une redirection en utilisant une commande JS
[VBScript] Utilisation des Array C++ builder formatage hex
[topik unique] java & composants applicatifs en bio-infoutilisation de sqlite 3.0.7 sous C
utilisation de syneditPeut on créer des composants ActiveX sous vb.net ?
Plus de sujets relatifs à : Utilisation des composants Indy 9 sous C++ Builder


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR