泰宁新闻网

windows内核安全与驱动开发,windows内核安全与驱动开发 pdf

泰宁新闻网 http://www.tainingxinwen.cn 2020-11-22 08:48 出处:网络
windows内核安全与驱动开发,windows内核安全与驱动开发 pdf,《Windows内核安全与驱动开发》4.1 文件操作

windows内核安全与驱动开发,windows内核安全与驱动开发 pdf,《Windows内核安全与驱动开发》4.1 文件操作

//提供一个卸载函数,让程序能卸载,如果没有这个函数,驱动将不能卸载。 VOID UnDriver(PDRIVER_OBJECT driver) KdPrint(("卸载驱动成功")); //入口函数,相当于main。 NTSTATUS DriverEntry(PDRIVER_OBJECT driver, PUNICODE_STRING reg_path) // 要返回的文件句柄 HANDLE file_handle = NULL; // 返回值 NTSTATUS status; // 文件状态 IO_STATUS_BLOCK io_status; // 首先初始化含有文件路径的OBJECT_ATTRIBUTE OBJECT_ATTRIBUTES object_attributes; UNICODE_STRING ufile_name = RTL_CONSTANT_STRING(L"\\??\\C:\\a.txt"); InitializeObjectAttributes( object_attributes, ufile_name, OBJ_CASE_INSENSITIVE | OBJ_KERNEL_HANDLE, NULL, NULL); // 以FILE_OPEN_IF 方式打开文件 status = ZwCreateFile( file_handle, GENERIC_READ | GENERIC_WRITE, object_attributes, io_status, NULL, FILE_ATTRIBUTE_NORMAL, FILE_SHARE_READ, FILE_OPEN_IF, FILE_NON_DIRECTORY_FILE | FILE_RANDOM_ACCESS | FILE_SYNCHRONOUS_IO_NONALERT, NULL, // 申请缓冲区 UCHAR buf[512]; // 读出文件内容并且打印出来 status = ZwReadFile( file_handle, NULL, NULL, NULL, io_status, buf, 512, NULL, NULL); // 打印出来 DbgPrint("%s",buf); driver- DriverUnload = UnDriver; return STATUS_SUCCESS; }

 

本文标题:windows内核安全与驱动开发,windows内核安全与驱动开发 pdf
http://www.tainingxinwen.cn/qitaxinxi/552414.html

0

精彩评论

暂无评论...
验证码 换一张
取 消