21,600
社区成员
发帖
与我相关
我的任务
分享
#include <ntddk.h>
//提供一个Unload函数用于内核程序的卸载
VOID DriverUnload(PDRIVER_OBJECT driver)
{
DbgPrint("Our driver is unloading...\r\n");
}
//DriverEntry入口函数,相当于main
NTSTATUS DriverEntry(PDRIVER_OBJECT driver,PUNICODE_STRING reg_path)
{
//人为设置一个断点用于调试。
//宏DBG保证只有调试版本才执行这条语句。
#if DBG
_asm int 3
#endif
//下面是报错的地方
//我就是想得到当前调用内核模块的进程的PID
//写成ULONG也会报错,ULONG i; i=ULONG(PsGetCurrentProcessId());这样也报错
int i;
i=int(PsGetCurrentProcessId());
//设置一个卸载函数
driver->DriverUnload=DriverUnload;
return STATUS_SUCCESS;
}