2012年4月10日

IRP 续二

摘要: 在第一篇中ring3的调用程序设置了DeviceIoControl 但是在驱动中未设置IRP_MJ_DEVICE_CONTROL现在补上代码#define IOCODE CTL_CODE(FILE_DEVICE_UNKNOWN,0x800,METHOD_BUFFERED,FILE_ANY_ACCESS )//0x0000-0x7FFF:微软保留 0x800-0xFFF 由用户自定义(因为我在ring3用800)#pragma code_seg( "PAGE" )NTSTATUS DeviceControl(PDEVICE_OBJECT pDevice, PIRP irp){ 阅读全文

posted @ 2012-04-10 23:07 xmcc 阅读(264) 评论(0) 推荐(0) 编辑

IRP 续一

摘要: 贴一下上篇文章创建新设备的代码#pragma code_seg("INIT" ) void CreateDevice(PDRIVER_OBJECT driver){ ULONG j; NTSTATUS statuss; UNICODE_STRING StDeviceName = {0}; UNICODE_STRING StSysLinkName= {0}; PDEVICE_EXT pExt=NULL; PDEVICE_OBJECT pDeviceObj = NULL; RtlInitUnicodeString(&StDeviceName, L... 阅读全文

posted @ 2012-04-10 21:52 xmcc 阅读(437) 评论(0) 推荐(0) 编辑

导航