最近我在使用WDK开发项目,想使用C++ 和STL特性。我来告诉大家如何使用C++ 和STL开发WDK。
先将.c结尾的源文件改为.cpp。
首先使用Visual Studio新建一个WDK项目,然后打开【WDK项目属性】->【配置属性】->【C/C++】->【语言】->C++语言标准,选择自己需要的STL标准。
项目此时可能会报错,比如驱动的入口函数DriverEntry,原来的头部为:
NTSTATUS DriverEntry(PDRIVER_OBJECT pDriverObject,
PUNICODE_STRING pRegistryPath);
我们给它添加
extern "C"
如下所示:
extern "C" NTSTATUS DriverEntry(PDRIVER_OBJECT pDriverObject,
PUNICODE_STRING pRegistryPath);
就可以解决这类报错