IcmpCreateFile Problem



  • Hallo ich versuche bestimmt jetzt schon seit ca. 1h die Funktion IcmpCreateFile zu verwenden. 😡

    Die DLL: IPHLPAPI.DLL und die LIB iphlpapi.lib habe ich bereits dem Projekt hinzugefügt aber ich bekomme immer etliche Fehlermeldungen.

    #include <Iphlpapi.h>
    #include <Icmpapi.h>
    
    int main(  )
    { 
    
    HANDLE h = IcmpCreateFile();
    
    cout<<h<<endl;
    
    return 0;
    }
    

    Die Fehlermeldungen:

    [BCC32 Fehler] in6addr.h(25): E2303 Typname erwartet
    [BCC32 Fehler] in6addr.h(25): E2139 In Deklaration fehlt ;
    [BCC32 Fehler] in6addr.h(26): E2303 Typname erwartet
    [BCC32 Fehler] in6addr.h(26): E2139 In Deklaration fehlt ;
    [BCC32 Warnung] ras.h(80): W8054 Stil der Funktionsdefinition ist nun veraltet
    [BCC32 Fehler] ras.h(80): E2275 { erwartet
    [BCC32 Fehler] ras.h(98): E2303 Typname erwartet
    [BCC32 Fehler] ras.h(98): E2139 In Deklaration fehlt ;
    [BCC32 Fehler] ras.h(99): E2303 Typname erwartet
    [BCC32 Fehler] ras.h(99): E2139 In Deklaration fehlt ;
    [BCC32 Fehler] ras.h(100): E2303 Typname erwartet
    [BCC32 Fehler] ras.h(100): E2139 In Deklaration fehlt ;
    [BCC32 Fehler] ras.h(125): E2303 Typname erwartet
    [BCC32 Fehler] ras.h(125): E2139 In Deklaration fehlt ;
    [BCC32 Fehler] ras.h(126): E2303 Typname erwartet
    [BCC32 Fehler] ras.h(126): E2139 In Deklaration fehlt ;
    [BCC32 Fehler] ras.h(127): E2303 Typname erwartet
    [BCC32 Fehler] ras.h(127): E2139 In Deklaration fehlt ;
    [BCC32 Fehler] ras.h(216): E2303 Typname erwartet
    [BCC32 Fehler] ras.h(216): E2139 In Deklaration fehlt ;
    [BCC32 Fehler] ras.h(218): E2303 Typname erwartet
    [BCC32 Fehler] ras.h(218): E2238 Bezeichner 'tagRASCONNSTATUSW::DWORD' mehrfach deklariert
    [BCC32 Fehler] ras.h(216): E2344 'tagRASCONNSTATUSW::DWORD' bereits deklariert
    [BCC32 Fehler] ras.h(218): E2139 In Deklaration fehlt ;
    [BCC32 Fehler] ras.h(219): E2303 Typname erwartet
    [BCC32 Fehler] ras.h(219): E2139 In Deklaration fehlt ;
    [BCC32 Fehler] ras.h(220): E2303 Typname erwartet
    [BCC32 Fehler] ras.h(220): E2139 In Deklaration fehlt ;
    [BCC32 Fehler] ras.h(229): E2303 Typname erwartet
    [BCC32 Fehler] ras.h(229): E2139 In Deklaration fehlt ;
    [BCC32 Fehler] ras.h(231): E2303 Typname erwartet
    [BCC32 Fehler] ras.h(231): E2139 In Deklaration fehlt ;
    [BCC32 Fehler] ras.h(232): E2303 Typname erwartet
    [BCC32 Fehler] ras.h(232): E2139 In Deklaration fehlt ;
    [BCC32 Fehler] ras.h(233): E2303 Typname erwartet
    [BCC32 Fehler] ras.h(233): E2139 In Deklaration fehlt ;
    [BCC32 Fehler] ras.h(254): E2303 Typname erwartet
    [BCC32 Fehler] ras.h(254): E2139 In Deklaration fehlt ;
    [BCC32 Fehler] ras.h(255): E2303 Typname erwartet
    [BCC32 Fehler] ras.h(255): E2139 In Deklaration fehlt ;
    [BCC32 Fehler] ras.h(256): E2303 Typname erwartet
    [BCC32 Fehler] ras.h(256): E2139 In Deklaration fehlt ;
    [BCC32 Fehler] ras.h(257): E2303 Typname erwartet
    [BCC32 Fehler] ras.h(257): E2139 In Deklaration fehlt ;
    [BCC32 Fehler] ras.h(258): E2303 Typname erwartet
    [BCC32 Fehler] ras.h(258): E2139 In Deklaration fehlt ;
    [BCC32 Fehler] ras.h(259): E2303 Typname erwartet
    [BCC32 Fehler] ras.h(259): E2139 In Deklaration fehlt ;
    [BCC32 Fehler] ras.h(260): E2303 Typname erwartet
    [BCC32 Fehler] ras.h(260): E2139 In Deklaration fehlt ;
    [BCC32 Fehler] ras.h(270): E2303 Typname erwartet
    [BCC32 Fehler] ras.h(270): E2228 Zu viele Fehlermeldungen oder Warnungen
    

    Compiler:
    CodeGear C++ 5.90 aus RAD Studios 2007 IDE

    Hat wer eine Ahnung was da falsch läuft?
    Ansonsten installier ich mir Visual Studios...



  • Vor der icmpapi.h noch die winsock2.h inkludieren.



  • Ohne windows.h hatte ich den selber Fehler aber jetzt hab ich einen neuen _

    [ILINK32 Fehler] Error: 'C:\USERS\DNB\DESKTOP\ICMP\DEBUG\IPHLPAPI.LIB' enthõlt einen ung³ltigen OMF-Record, Typ 0x21 (m÷glicherweise COFF)
    
    #include <windows.h>
    #include <Iphlpapi.h>
    #include <Icmpapi.h>
    #include <winsock2.h>
    
    int main(  )
    {
    
    HANDLE h = IcmpCreateFile();
    
    return 0;
    }
    

    Ist die IPHLPAPI.LIB nicht in Ordnung die ist aus dem WINDDK.



  • Zum Problem kann ich nichts sagen, aber lesen kann ich :p

    Belli schrieb:

    Vor der icmpapi.h noch die winsock2.h inkludieren.



  • Sry hatte vergessen zu schreiben das ich das auch schon gemacht haben.

    Belli schrieb:

    Vor der icmpapi.h noch die winsock2.h inkludieren.

    Ich bekomme wieder diesen Fehler:

    [ILINK32 Fehler] Error: 'C:\USERS\DNB\DESKTOP\ICMP\DEBUG\IPHLPAPI.LIB' enthõlt einen ung³ltigen OMF-Record, Typ 0x21 (m÷glicherweise COFF)
    


  • Ich hab einen Link gefunden da steht wie es geht:
    http://bcbjournal.com/articles/vol3/9906/Pinging_a_server.htm

    Beim C++ Builder ist ein Programm dabei das heisst IMPLIB.exe
    Im Windows/system32 Verzeichniss da gibt es eine Datei die heißt icmp.dll und daraus muss man mit dem IMPLIB.exe Programm eine LIB Datei erstellen.

    implib icmp.lib c:\windows\system32\icmp.dll

    Und dann kann man die DLL und die LIB einfach beim Projekt einbinden dann geht es.


Anmelden zum Antworten