- C++17
- Windows 7 or higher
- Arch: X86, AMD64
#include <wdk\wdk.h>
- Call
wdk::WdkInitSystem()
inDriverEntry
extern"C"
auto DriverEntry(PDRIVER_OBJECT aDriverObject, PUNICODE_STRING) -> NTSTATUS
{
auto vStatus = STATUS_SUCCESS;
for (;;)
{
// Just a chestnut(example)
vStatus = wdk::WdkInitSystem();
if (!NT_SUCCESS(vStatus))
{
break;
}
aDriverObject->DriverUnload = DriverUnload;
break;
}
if (!NT_SUCCESS(vStatus))
{
DriverUnload(aDriverObject);
}
return vStatus;
}
Undocument struct, function and Tips.
E.g
- ETHREAD
- EPROCESS
- Other ...
Thanks for the support of these projects
MSDN
ReactOS
ProcessHacker
wbenny/pdbex
wbenny/ntdiff
tandasat/HyperPlatform