Programm wird nicht compiliert.



  • Hallo!
    Ich möchte gerne einen netzwerkfähigen Treiber schreiben.
    Habe aber ein Problem:

    #include <winsock2.h>
    #include <ntddk.h>
    
    NTSTATUS DriverEntry(PDRIVER_OBJECT pDriverObject, PUNICODE_STRING pRegistryPath)
    {
        return STATUS_SUCCESS;
    }
    

    dieser Code wird nicht compiliert (158 Fehler). mache ich da was falsch?
    wenn die Datei winsock2.h nicht eingebunden wird, wird der Code compiliert ohne Fehler



  • Klappt's evtl, wenn du die Include-Reihenfolge vertauschst?



  • nein, genau so viele fehler



  • Hm, magst du die ersten paar Fehler posten (bitte nicht alle 158)? In welcher Datei treten die auf?



  • Wäre mir sowieso neu dass man in einem Treiber einfach so Winsock Funktionen verwenden kann.



  • So sieht bei mir die Ausgabe aus, also die ersten paar fehler

    BUILD: Adding /Y to COPYCMD so xcopy ops won't hang.
    BUILD: Object root set to: ==> objchk_wnet_x86
    BUILD: Compile and Link for i386
    BUILD: Loading C:\WINDDK\3790~1.183\build.dat...
    BUILD: Computing Include file dependencies:
    BUILD: Examining c:\winddk\3790~1.183\mydrivers\wshsmple directory for files to
    compile.
    c:\winddk\3790~1.183\mydrivers\wshsmple - 1 source files (7 lines)
    BUILD: Compiling (NoSync) c:\winddk\3790~1.183\mydrivers\wshsmple directory
    Compiling - wshsmple.c for i386
    errors in directory c:\winddk\3790~1.183\mydrivers\wshsmple
    c:\winddk\3790.1830\inc\wnet\ntdef.h(83) : error C2220: warning treated as error
    - no object file generated
    c:\winddk\3790.1830\inc\wnet\ntdef.h(83) : error C4005: 'MAX_NATURAL_ALIGNMENT'
    : macro redefinition
    c:\winddk\3790.1830\inc\wnet\ntdef.h(116) : error C4005: 'PROBE_ALIGNMENT' : mac
    ro redefinition
    c:\winddk\3790.1830\inc\wnet\ntdef.h(661) : error C2011: '_FLOAT128' : 'struct'
    type redefinition
    c:\winddk\3790.1830\inc\wnet\ntdef.h(708) : error C2011: '_LARGE_INTEGER' : 'uni
    on' type redefinition
    c:\winddk\3790.1830\inc\wnet\ntdef.h(726) : error C2011: '_ULARGE_INTEGER' : 'un
    ion' type redefinition...............

    Ich habe auch versucht ntddk.h nicht einzubinden, also nur winsock2.h, lief auch nicht, aber mit nur 9 fehler.


Anmelden zum Antworten