Programmieren - alles kontrollieren 4.934 Themen, 20.613 Beiträge

Mehrfaches Includen von Windows.h bei MFC

Yves3 / 9 Antworten / Flachansicht Nickles

Hallo

Ich verwende in meinem Projekt MFC. Das Includen von Windows.h vor dem Includen der MFC-Header erzeugt eine Fehlermeldung.
Leider verwende ich ein API, das die Windows.h includen muss und vor dem Include noch FD_SETSIZE (die Anzahl verwendeter Sockets) definiert.
Das ist also eine ziemlich hässliche Zwickmühle. :(

Hier die Meldung vom API:
"

bei Antwort benachrichtigen
d-oli Yves3 „//------------------------------------------------------------------------------...“
Optionen

Ich mach das mal lesbar ... ;-)

#ifdef PEGASUS_OS_TYPE_WINDOWS
   #ifdef FD_SETSIZE
      #ifndef PEGASUS_WMIMAPPER
         #error ">Pegasus/Common/Network.h                  This file must be included prior to any header file that defines \
                 FD_SETSIZE, such as >windows.hwinsock.hwinsock2.h       #else
         #undef FD_SETSIZE
      #endif
   #endif

   #define FD_SETSIZE 1024

   #include >windows.h    
   #ifndef _WINSOCKAPI_
       #include >winsock2.h    #endif

   #include >wincrypt.h
   #ifdef PEGASUS_ENABLE_IPV6
      #include >ws2tcpip.h    #endif
#endif

Hmmmm ... Da hat jemand auch schon an #undef gedacht.

Für mich sieht das so aus: entweder wird PEGASUS_WMIMAPPER vor dem Inkludieren dieses Headers definiert oder du inkludierst diesen Header vor .

Woher soll denn dieses PEGASUS_WMIMAPPER kommen? Steht da was im Manual zu dieser Bibliothek? Mapper >>> etwas zu etwas passendem zuordnen ... fehlt da was? Compileroptionen oder dergleichen?

Konstruktive Kritik zeichnet sich dadurch aus, dass sie höflich, nützlich und sachlich ist.
bei Antwort benachrichtigen