Windows设备驱动
zhang-hui
Have a nice day
展开
-
vs2008+WDK环境配置
环境:WDK (7600.16385.1版默认安装目录) + WindowsXP + VS2008 其他VS或者Vista/Win7应该都是大同小异的。参考网站:http://www.cnblogs.com/Jesses/articles/1636331.html http://blog.csdn.net/hellward/转载 2012-04-24 10:47:23 · 3158 阅读 · 0 评论 -
DeviceIoControl与驱动交互
与驱动程序通信的函数,除了ReadFile和WriteFile函数还有DeviceIoControl函数,而且DeviceIoControl函数那是相当的彪悍。因为它可以自定义控制码,你只要在IRP_MJ_DEVICE_CONTROL对应的派遣函数中读取控制码,然后针对控制码,你就可以实现自定义的功能了。 函数原型:BOOL WINAPI DeviceIoControl( __转载 2012-05-02 11:11:18 · 4071 阅读 · 2 评论 -
VC6.0 +WDK 开发驱动的环境配置
下面就来说明一下各种平台编译sys驱动的方法(包括64位平台)先看32位版本驱动的编译方法,首先你得准备一些编译必备工具:1.要安装VC62.安装DDK(装哪个呢?这个问题其实很简单的,只是很多人不明白,装DDK当然是越新越好了,越新支持的平台越多, 像2000DDK你是绝对 编译不出来64位sys的,因为它没带64位的库和编译器,所以我们选择现在最比较新的,2003DDK转载 2012-04-20 17:32:20 · 7363 阅读 · 0 评论 -
INF DDInstall.Services Section
INF DDInstall.Services Section[install-section-name.Services] |[install-section-name.nt.Services] |[install-section-name.ntx86.Services] |[install-section-name.ntia64.Services] |翻译 2012-04-30 08:58:23 · 983 阅读 · 0 评论 -
IRP(I/O Request Package)详解
简介:IRP(I/O Request Package)在windows内核中,有一种系统组件——IRP,即输入输出请求包。当上层应用程序需要访问底层输入输出设备时,发出I/O请求,系统会把这些请求转化为IRP数据,不同的IRP会启动I/O设备驱动中对应的派遣函数。IRP类型由于IRP是响应上层应用程序的。可想而知,IRP类型是与上层对底层设备的访问类型相对应。文件相转载 2012-04-28 20:42:34 · 2037 阅读 · 0 评论 -
INF Models Section
INF Models Section形如:[models-section-name] |[models-section-name.TargetOSVersion] (Windows XP and later versions of Windows)device-description=install-section-name[,hw-id][,compat翻译 2012-04-30 09:01:04 · 1109 阅读 · 0 评论 -
sys文件--查看DbgPrint函数打印的信息
环境:XP + VS2008 + WDK工具:DebugView+ DriverMonitor查看DbgPrint函数打印的信息只需两步。step1:成功编译出sys文件。step2:打开DriverMonitor和DebugView软件。step3:用DriverMonitor加载对应的sys文件,在DebugView软件就可以查看到对应的DbgPrint原创 2012-04-28 16:51:12 · 3390 阅读 · 0 评论 -
设备驱动开发之缓冲区读写操作
在驱动程序创建设备对象时,就需要为设备指定何种读写方式。设备对象共有三种读写方式,分别是缓冲区方式读写/直接方式读写/其他方式读写其对应的Flags设置为:DO_BUFFERED_IO/DO_DIRECT_IO/0(零值)。缓冲区读取代码示例: //创建设备 status = IoCreateDevice( pDriverObject, sizeof(转载 2012-05-01 08:48:10 · 1484 阅读 · 0 评论 -
INF DestinationDirs Section
INF DestinationDirs SectionINF DestinationDirs Section格式如下:[DestinationDirs][DefaultDestDir=dirid[,subdir]] [file-list-section=dirid[,subdir]]...描述:该域记录了在INF文件的其他域中引用的需要复、删除、重命翻译 2012-04-30 09:05:30 · 3423 阅读 · 0 评论 -
INF DDInstall Section
INF DDInstall Section形如:[install-section-name] | [install-section-name.nt] | [install-section-name.ntx86] | [install-section-name.ntia64] | (Windows XP and later versions of W翻译 2012-04-30 08:59:55 · 1448 阅读 · 0 评论 -
INF Manufacturer Section
INF Manufacturer Section[Manufacturer]manufacturer-identifier[manufacturer-identifier] [manufacturer-identifier] ...描述:Manufacturer Section指定了INF文件安装的设备制造商信息。翻译 2012-04-30 09:04:19 · 1916 阅读 · 0 评论 -
INF Version Section详解
最近在学习设备驱动程序方面,了解到安装sys文件需要INF文件,边学习边做笔记原文链接:http://msdn.microsoft.com/en-us/library/windows/hardware/ff547502(v=vs.85).aspx[Version] Signature="signature-name"[Class=class-name][ClassGuid={nnn翻译 2012-04-26 15:37:14 · 4233 阅读 · 0 评论 -
INF ClassInstall32.Services Section详解
原文链接:http://msdn.microsoft.com/en-us/library/windows/hardware/ff546339(v=vs.85).aspx'ClassInstall32.Services Section形如:[ClassInstall32.Services] | [ClassInstall32.nt.Services] | [ClassInstall翻译 2012-04-27 10:31:34 · 1620 阅读 · 0 评论 -
INF ClassInstall32 Section详解
原文链接:http://msdn.microsoft.com/en-us/library/windows/hardware/ff546335(v=vs.85).aspxINF ClassInstall32 Section的形式如下:[ClassInstall32] | [ClassInstall32.nt] | [ClassInstall32.ntx86] |[Cla翻译 2012-04-26 22:40:37 · 3797 阅读 · 0 评论 -
INF SourceDisksNames Section 和 SourceDisksFiles Section详解
INF SourceDisksNames Section[SourceDisksNames] |[SourceDisksNames.x86] | [SourceDisksNames.ia64] | (Windows XP and later versions of Windows)[SourceDisksNames.amd64] (Windows XP and later version翻译 2012-04-26 17:47:07 · 3838 阅读 · 0 评论 -
INF文件中的HKR
原文链接地址:http://blog.csdn.net/weiwei22844/article/details/6088889最近在学习驱动编程的INF文件格式时,在AddReg等directive中有很多与注册表相关的内容,现总结如下:HKCR代表HKEY_CLASSES_ROOT;HKCU代表HKEY_CURRENT_USER;HKLM代表HKEY_LOCAL_MACH转载 2012-04-26 09:53:07 · 2512 阅读 · 0 评论 -
DDK(Driver Developer Kit)和WDK(Windows Driver Kit)的区别
首先,先从基础的东西说起,开发WINDOWS下的驱动程序,需要一个专门的开发包,如:开发JAVA程序,我们可能需要一个JDK,开发WINDOWS应用程序,我们需要WINDOWS的SDK,现在开发WINDOWS下的驱动程序,我们需要一个DDK/WDK。DDK(Driver Developer Kit)和WDK(Windows Driver Kit)的区别: 这个要说说驱动相关的一些转载 2012-04-20 15:36:25 · 3082 阅读 · 0 评论