- 5
- 0
- 约4.82千字
- 约 9页
- 2020-11-03 发布于广东
- 举报
USB驱动程序的编写采用 WDM驱动程序。WDM驱动程序是一些例程的集合, 它们被动地存在,等待主机系
统软件( PnP 管理器、 I/O 管理器、电源管理器等)来调用或激活它们。具体驱动程序不同,其所包含
的例程也不同。一个 WDM驱动程序的基本组成包括以下 5 个例程:
驱动程序入口例程:处理驱动程序的初始化。
即插即用例程:处理 PnP 设备的添加、删除和停止。
分发例程:处理用户应用程序发出的各种 I/O 请求。
电源管理例程:处理电源管理请求。
)卸载例程:处理驱动程序的卸载。包含文件:
, ,
, , , makefile,sources)
在文件中,包含了上述五个例程:
中定义了各种数据结构还有各种 IOCTL控制码,用于不同数据的读写。
中实现了各种驱动例程。包含了上述五个所说例程外还包含了其他例程,课程从下面的驱动
程序入口例程得出一些信息。
驱动程序入口例程:
NTSTATUS
DriverEntry(
IN PDRIVER_OBJECT DriverObject,
IN PUNICODE_STRING RegistryPath
)
{
NTSTATUS ntStatus = STATUS_SUCCESS;
PDEVICE_OBJECT deviceObject = NULL;
DriverObject-MajorFunction[IRP_MJ_CREATE] = Ezusb_Create;
DriverObject-MajorFunction[IRP_MJ_CLOSE] = Ezusb_Close;
ources. If you want to add a new source # file to this
component. This file merely indirects to the real make file # that is shared by all the
driver components of the WindowsNTDDK# !INCLUDE$(NTMAKEENV)
不要编辑这个文件。 事实上每个 WDM程序所需要的 makefile 的内容都是一样的,只需要简单地 copy
一个 makefile 到新的项目中就可以了
2、Sources
TARGETNAME= TARGETTYPE=DRIVER DRIVERTYPE=WDM TARGETPATH=lib
INCLUDES=$(BASEDIR)inc; $(BASEDIR)incddk; TARGETLIBS=$(BASEDIR)lib*
SOURCES= \
这个文件指定了驱动程序目标名是,是一个 WDM驱动程序,生成的文件存放在lib 目录
中。值得注意的是,“ =”前后不能有空格,否则编译的时候会出错。开始编译:
“ 开 始 ”- “ 程 序 ”- “Development Kits ”- “Windows 2000 DDK” - “Checked Build Environment
”
屏幕将显示:(有“回车”的那行是需要读者你亲自打进去的)
New or updated MSVCdetected. Updating DDK environment ?. Setting environment for using
Microsoft Visual C++ tools. Starting dirs creation ?Completed. D:NTDDKcd jtag_usb (回车)
D:HelloWDMbuild (回车)
如果源代码没有错误的话,生成的将存放在 lib 目录中。安装驱动程序:
利用 INF 文件实现驱动的安装。我们一般是采用 INF 文件, inf 文件如下所示:
:
[Version] Signature = $CHICAGO$ Class = USB DriverVer = 11/11/2007,1.00.00 ClassGUID =
{36FC9E60-C465-11CF-40000} provider = %ECICT% [SourceDisksNames] 1=%
CYUSB_INSTALL%,,, [SourceDisksFiles] = 1
[Manufacturer] %MfgName%=ECICT
[Ecict] %VID_0547%=CyUsb, USB\VID_0547PID_1002 [DestinationDirs]
= 10,System32\Drivers [] AddReg= []
CopyFiles= AddReg= [ AddReg= Addservice = CyUsb, 0 []
DisplayName = %%ServiceTyp
您可能关注的文档
最近下载
- 佳能Canon Powershot SX220 HS_SX230 HS(中文)说明书.pdf VIP
- 钢结构2018年定额.pdf
- 公司内部之间的转账合同6篇.docx VIP
- 2025年无人机驾驶员执照失控恢复中的遥控器链路中断应对专题试卷及解析.pdf VIP
- Supor 苏泊尔 JP12D-800温养破壁料理机说明书.pdf
- 喜人奇妙夜小品《分工明确》完整剧本(含赏析)【精选】.docx VIP
- 2026-2031中国无人船无人潜航器行业市场规模及投资前景预测分析报告.docx VIP
- GBT 1800.1-2020 产品几何技术规范(GPS) 线性尺寸公差ISO代号体系 第1部分:公差、.pdf
- 《计算机应用基础》课程上机操作题.doc VIP
- 2025年金融风险管理师CDS与债券基差的交易策略专题试卷及解析.pdf VIP
原创力文档

文档评论(0)