tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
8
ZUGRIFFE
2324
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Nachfrager Nachfrager ist offline Mitglied
    Registriert seit
    Mar 2007
    Beiträge
    17
    Hallo,

    ich habe folgende Frage: wie ist es möglich, einen normalen AnsiString in einen MD5-Hash umzuwandeln Habe schon manche Beispiele gefunden, habe aber immer Fehler bekommen, die mir sagen, dass irgendeine Funktion in der UNIT1.OBJ nicht deklariert oder so ist..

    Grüße
    Jannis
     

  2. #2
    Supa Supa ist offline Mitglied Gold
    Registriert seit
    Jul 2004
    Ort
    Velbert
    Beiträge
    160
    Hy,

    vor 'nem ähnlichen Problem stand ich auch mal.

    Ich hab mir dann nur ne passende MD5 Klasse runtergeladen und die md5class.h includiert. Dann hab ich mir ne Funktion geschrieben die folgendermaßen aussah:
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    
    String getMD5(String s)
    {
       CMD5 md5;
     
       md5.setPlainText((char*)s.c_str());
     
       return md5.getMD5Digest();
    }
    Im Anhang befindet sich die Klasse, die ich benutzt habe.

    Damit generiere ich mir meine MD5 Hashs...

    mfg
    Angehängte Dateien Angehängte Dateien
     
    noch 'n bischen Werbung in eigener Sache: www.ice-only.de

  3. #3
    Nachfrager Nachfrager ist offline Mitglied
    Registriert seit
    Mar 2007
    Beiträge
    17
    Hallo,

    danke erstmal für die Klasse. Trotz dem hab ich noch einen Fehler bekommen:

    Zitat Zitat von Borland C++ Builder Fehlerausgabe
    [C++ Fehler] md5-aufruf.cpp(5): E2141 Fehler in der Deklarationssyntax
    [Edit] oder soll ich doch lieber ein php script hochladen und es dann mit 'ner IdHTTP auslesen? xD [/Edit]
    Geändert von Nachfrager (22.06.07 um 14:14 Uhr)
     

  4. #4
    Supa Supa ist offline Mitglied Gold
    Registriert seit
    Jul 2004
    Ort
    Velbert
    Beiträge
    160
    Na, wenn das da steht, dann gibt's offensichtlich nen Fehler in deiner Deklaration...

    Vielleicht postest du einfach mal ein Stück Code?
     
    noch 'n bischen Werbung in eigener Sache: www.ice-only.de

  5. #5
    Nachfrager Nachfrager ist offline Mitglied
    Registriert seit
    Mar 2007
    Beiträge
    17
    Hallo,

    hier die Unit1.cpp:

    Code cpp:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    
    //---------------------------------------------------------------------------
     
    #include <vcl.h>
    #pragma hdrstop
     
    #include "Unit1.h"
    #include "md5class.h"
    //---------------------------------------------------------------------------
    #pragma package(smart_init)
    #pragma resource "*.dfm"
    TForm1 *Form1;
    //---------------------------------------------------------------------------
    __fastcall TForm1::TForm1(TComponent* Owner)
            : TForm(Owner)
    {
    }
    //---------------------------------------------------------------------------
     
    String getMD5(String s)
    {
       CMD5 md5;
     
       md5.setPlainText((char*)s.c_str());
     
       return md5.getMD5Digest();
    }
    //---------------------------------------------------------------------------
    void __fastcall TForm1::Button1Click(TObject *Sender)
    {
    ShowMessage (getMD5 ("www.tutorials.de"));
    }
    //---------------------------------------------------------------------------

    Grüße
    Jannis
     

  6. #6
    Supa Supa ist offline Mitglied Gold
    Registriert seit
    Jul 2004
    Ort
    Velbert
    Beiträge
    160
    Ich hab das Programm jetzt mal so übernommen und ich bekam nen Linker-Fehler...

    Dann hab ich die "md5c.cpp" und die "md5class.cpp" dem Projekt, als Dateien, hinzugefügt, und dann ging's...
     
    noch 'n bischen Werbung in eigener Sache: www.ice-only.de

  7. #7
    Nachfrager Nachfrager ist offline Mitglied
    Registriert seit
    Mar 2007
    Beiträge
    17
    Hallo,

    ja!! Jetzt klappt es!! Dankee!

    Grüße
    Jannis
     

  8. #8
    pooop pooop ist offline Grünschnabel
    Registriert seit
    Aug 2007
    Beiträge
    3
    Tut mir leid, dass ich jetzt den Thread hochgeholt habe, aber bekomme immernoch Fehler.
    Bin alles genau so durchgegangen, habe zuerst auch die Linker Fehler bekommen, doch nun
    bekomm ich Fehler wie z.b. :

    Code :
    1
    2
    3
    4
    
    [C++ Fehler] md5c.cpp(102): E2451 Undefiniertes Symbol 'context'
    [C++ Fehler] md5c.cpp(104): E2040 Deklaration nicht ordnungsgemäß abgeschlossen
    [C++ Fehler] md5c.cpp(287): E2238 Bezeichner 'input' mehrfach deklariert
    [C++ Fehler] md5c.cpp(120): E2344 'input' bereits deklariert

    und das alles auch öfters. Nun meine Frage :
    Wie bekomm ich die Errors weg ?

    PS: code ist der selbe wie von Jannis der oben schon gepostet wurde
     

  9. #9
    Avatar von RudolfG
    RudolfG RudolfG ist offline Mitglied Brokat
    Registriert seit
    Jul 2006
    Ort
    Gummersbach (NRW)
    Beiträge
    337
    Zitat Zitat von pooop Beitrag anzeigen
    Wie bekomm ich die Errors weg ?

    PS: code ist der selbe wie von Jannis der oben schon gepostet wurde
    Naja nur das das bei Ihm der Code nur bis zeile 33 geht und bei dir scheinbar bis mind. 287.

    Eigentlich sagen die Fehlermeldungen schon alles aus. Klick doppelt auf die jeweilige Fehlermeldung dann müsstest du an die Stelle kommen bei der der Fehler ist.

    Code :
    1
    
     [C++ Fehler] md5c.cpp(102): E2451 Undefiniertes Symbol 'context'
    Dieser Fehler kommt vor wenn man sich vertippt hat bzw. wenn man eine Variable etc. benutzt die man nicht deklariert hat.

    Code :
    1
    2
    
     [C++ Fehler] md5c.cpp(287): E2238 Bezeichner 'input' mehrfach deklariert
    [C++ Fehler] md5c.cpp(120): E2344 'input' bereits deklariert
    Hier steht das du "input" mehrfach deklariert hast. klick doppelt um an die Fehlerstelle zu kommen.

    Wenn du auf die Fehlermeldung klickst und dann F1 drückst dann müsste die Hilfe sich öffnen und da stehen dann in der Regel die Fehlerbeschreibung und die Möglichkeit zur Fehlerbehebung drin.

    Gruß
    Rudolf Grauberger
     
    Technologien
    (Gute) Grundkenntnisse: HTML, CSS
    Fortgeschrittene-Kenntnisse: C++/Qt, C# (WinForms, Webservice), SQL

Ähnliche Themen

  1. ANSI und UTF
    Von Kenbu im Forum Swing, Java2D/3D, SWT, JFace
    Antworten: 0
    Letzter Beitrag: 23.08.07, 11:49
  2. ansi.sys
    Von mike4004 im Forum C/C++
    Antworten: 9
    Letzter Beitrag: 14.10.05, 17:22
  3. C++ && ANSI standard
    Von Ling79 im Forum C/C++
    Antworten: 4
    Letzter Beitrag: 26.07.05, 13:58
  4. Konvertierung von DOS -> ANSI
    Von heikoarndt im Forum .NET Archiv
    Antworten: 2
    Letzter Beitrag: 11.01.05, 13:16
  5. ansi c#2
    Von kawa_m im Forum C/C++
    Antworten: 4
    Letzter Beitrag: 15.11.04, 19:42