08 2015 档案
摘要:最近在看着《windows驱动开发技术详解》这本书,模仿着敲了第七章中的模拟文件读写部分。在Debug过程中,蓝屏了好多次并出现了各种奇葩的问题。在调了快两天之后,问题终于解决了!现在在这里一一再现遇到的问题和解决方法。 【在别人博客的评论中看到这么一句,"能让大家节约时间,就是写博客的目的之一...
阅读全文
摘要:IO_STACK_LOCATION和IRP算是驱动中两个很基础的东西,为了理解这两个东西,找了一点资料。1. IRP可以看成是Win32窗口程序中的消息(Message),DEVICE_OBJECT可以看成是Win32窗口程序中的窗口(Window)2. 任何内核模式程序在创建一个IRP时,同时还创...
阅读全文
摘要:1 实验要求(WDM驱动)2 编写过程2.1 确立整体架构2.1.1 入口函数——DriverEntry(1)作用设置pDriverObject结构体,注册AddDevice和相关PNP函数,包括IRP_MJ_PNP,IRP_MJ_CREATE等(2)注意AddDevice在Driver_Objec...
阅读全文
摘要:目录1 实验要求2 编写过程 2.1 确立整体架构 2.1.1 入口函数——DriverEntry 2.1.2 自定义创建设备函数——CreateDevice 2.1.3 卸载函数——DriverUnLoad 2.1.4IRP派遣函数 2.1.5 DUMP函数3. 收...
阅读全文
摘要:LINUX 和 WINDOWS 内核的区别[声明:欢迎转载,转载请注明出自CU ACCESSORY http://linux.chinaunix.net/bbs/thread-1153868-1-1.html]关于LINUX和WINDOWS的口水站已经很多了。本文企图从技术角度来比较下2个主流操作系...
阅读全文
摘要:字符串是一个字符序列,(提醒:序列是Python的一个重要的关键词),其中存放UNICODE字符。Python中的字符串是不可变的(immutable),即对字符串执行操作时,总是产生一个新的字符串而不是修改现有的字符串。字符串常量的表示1. 3种表示1 #单引号2 A = 'Python'3 ...
阅读全文
摘要:Service Control Manager,服务控制管理器,人称SCM就是它!在Windows内核中,都可以看到她忙碌的身影,可以说是系统服务和驱动的管家婆了! SCM管家婆起早贪黑,每次系统启动,她也随着而起。她凭借着自己的努力,终于在Windows的内核占据了一席之地,调配着手下许多服务...
阅读全文
摘要:BOOL WINAPI EnumServicesStatusEx(_In_ SC_HANDLE hSCManager,_In_ SC_ENUM_TYPE InfoLevel,_In_ DWORD dwServiceType,_In_ DWORD dwServiceState,_Out_opt_ LP...
阅读全文
摘要:BOOL WINAPI QueryServiceStatus(_In_ SC_HANDLE hService,_Out_ LPSERVICE_STATUS lpServiceStatus);函数作用:获取指定驱动的当前状态参数:1. hService:服务句柄, OpenService 或 Crea...
阅读全文
摘要:BOOL WINAPI ControlService(_In_ SC_HANDLE hService,_In_ DWORD dwControl,_Out_ LPSERVICE_STATUS lpServiceStatus);函数作用:给指定的服务发送一个控制码参数:1. hService: Open...
阅读全文
摘要:BOOL WINAPI DeleteService(_In_ SC_HANDLE hService);函数作用:从SCM数据库中标志一个服务已删除参数:1.OpenService 或CreateService function返回的服务句柄;需要有DELETE权限。返回值:成功,非0;失败为0,错误...
阅读全文
摘要:BOOL WINAPI StartService(_In_ SC_HANDLE hService,_In_ DWORD dwNumServiceArgs,_In_opt_ LPCTSTR *lpServiceArgVectors);函数作用:开始一个服务参数:1.hService:服务句柄,由Ope...
阅读全文
摘要:SC_HANDLE WINAPI OpenService(_In_ SC_HANDLE hSCManager,_In_ LPCTSTR lpServiceName,_In_ DWORD dwDesiredAccess);函数作用:打开一个已经存在的服务参数:1.hSCManager:SCM数据库句柄...
阅读全文
摘要:SC_HANDLE WINAPI CreateService(_In_ SC_HANDLE hSCManager,_In_ LPCTSTR lpServiceName,_In_opt_ LPCTSTR lpDisplayName,_In_ DWORD dwDesiredAccess,_In_ DWO...
阅读全文
摘要:SC_HANDLE WINAPI OpenSCManager(_In_opt_ LPCTSTR lpMachineName,_In_opt_ LPCTSTR lpDatabaseName,_In_ DWORD dwDesiredAccess);函数作用:以一定的权限,在指定的计算机打开指定的SCM数...
阅读全文
摘要:零 问题假设typedef struct ListEntry{ struct ListEntry *flink; struct ListEntry *blink;}ListEntry;typedef struct MyDataStruct{ signed int x; signed int y;...
阅读全文