Delen via


Headerbestanden in de Windows Driver Kit

De API-referentiedocumenten voor Windows Driver Kit (WDK) bevat alle headerbestanden (.h-bestanden) die u nodig hebt om stuurprogramma's voor kernelmodus en gebruikersmodus te bouwen. Headerbestanden bevinden zich in de map Opnemen in uw WDK-installatiemap. Voorbeeld: C:\Program Files (x86)\Windows Kits\10\Include.

De headerbestanden bevatten versiegegevens, zodat u dezelfde set headerbestanden kunt gebruiken, ongeacht de versie van Windows waarop uw stuurprogramma wordt uitgevoerd.

Constanten die Windows-versies vertegenwoordigen

Headerbestanden in de WDK bevatten voorwaardelijke instructies die programmeerelementen opgeven die alleen beschikbaar zijn in bepaalde versies van het Windows-besturingssysteem. De versie-elementen omvatten functies, opsommingen, structuren en structuurleden.

Als u de programmeerelementen wilt opgeven die beschikbaar zijn in elke versie van het besturingssysteem, bevatten de headerbestanden preprocessorvoorwaardelijke voorwaarden waarmee de waarde van NTDDI_VERSION wordt vergeleken met een set vooraf gedefinieerde constante waarden die zijn gedefinieerd in Sdkddkver.h.

Hier volgen de vooraf gedefinieerde constante waarden die versies van het Microsoft Windows-besturingssysteem vertegenwoordigen.

Constant Versie van besturingssysteem

NTDDI_WIN10

Windows 10

NTDDI_WINBLUE

Windows 8.1

NTDDI_WIN8

Windows 8

NTDDI_WIN7

Windows 7

NTDDI_WS08SP4

Windows Server 2008 met SP4

NTDDI_WS08SP3

Windows Server 2008 met SP3

NTDDI_WS08SP2

Windows Server 2008 met SP2

NTDDI_WS08

Windows Server 2008

U ziet veel voorbeelden van versiespecifieke DDI-elementen in de WDK-headerbestanden. Deze voorwaardelijke declaratie wordt weergegeven in Wdm.h, een headerbestand dat kan worden opgenomen door een kernelmodusstuurprogramma.

#if (NTDDI_VERSION >= NTDDI_WIN7)
_Must_inspect_result_
NTKERNELAPI
NTSTATUS
KeSetTargetProcessorDpcEx (
    _Inout_ PKDPC Dpc,
    _In_ PPROCESSOR_NUMBER ProcNumber
    );
#endif

In the example you can see that the KeSetTargetProcessorDpcEx function is available only in Windows 7 and later versions of Windows.

Deze voorwaardelijke declaratie wordt weergegeven in Winspool.h. Dit is een headerbestand dat kan worden opgenomen door een stuurprogramma voor de gebruikersmodus.

#if (NTDDI_VERSION >= NTDDI_WIN7)
...
BOOL
WINAPI
GetPrintExecutionData(
    _Out_ PRINT_EXECUTION_DATA *pData
    );

#endif // (NTDDI_VERSION >= NTDDI_WIN7)

In the example can see that the GetPrintExecutionData function is available only in Windows 7 and later versions of Windows.

Headerbestanden voor het Stuurprogrammaframework voor kernelmodus

De WDK ondersteunt verschillende versies van Windows en ondersteunt ook verschillende versies van het Kernel Mode Driver Framework (KMDF) en User Mode Driver Framework (UMDF). De versiebeheerinformatie in de WDK-headerbestanden heeft betrekking op Windows-versies, maar niet op KMDF- of UMDF-versies. Headerbestanden voor verschillende versies van KMDF en UMDF worden in afzonderlijke mappen geplaatst.