阅读:1826回复:8
关于WDM驱动初始化问题
我想问一个比较菜的问题
我在<<windows NT设备驱动程序设计指南>>书上说把硬件插入 pci插槽,由操作系统收集关于硬件信息,然后写进注册表,然后 由驱动程序从注册表里读信息,可是我插了之后,在注册表里没看见 硬件相关信息,我是否理解有误?? 是不是应该在系统找到新硬件,安装之后,由安装信息,inf文件 写进注册表以后,驱动程序才能找到硬件,把硬件信息映射到内存? 希望你能给我详细讲讲好吗? |
|
|
沙发#
发布于:2002-04-30 14:09
用户被禁言,该主题自动屏蔽! |
|
板凳#
发布于:2002-04-30 14:29
nt那本书讲的是nt系统下的硬件初始化
和wdm有什么关系, |
|
|
地板#
发布于:2002-04-30 16:10
我想问一个比较菜的问题 你的硬件芯片里面有信息,如果是p&p的,windows会得到里面的信息,并且自动写道register里面去。 |
|
|
地下室#
发布于:2002-05-08 12:35
你的硬件芯片里面有信息,如果是p&p的,windows会得到里面的信息,并且自动写道register里面去。 [/quote]
我也是这样想的,可是插入硬件之后,在注册表里看不到硬件信息嘛 我还想问一下:如果我在开始做w2k的驱动时候,是不是我一开始就应该把安装信息(即inf文件)编好呢,还是最后才编写,也就是说在开始开发阶段用手动添加注册表信息,手动启动?? 这开发步骤该怎么安排? [编辑 - 5/8/02 作者: qlang] |
|
|
5楼#
发布于:2002-05-08 12:39
写好INF再编驱动,兄弟我给你一个简单的INF文件
[Version] Signature=\"$WINDOWS NT$\" Class=Token ClassGuid={2AE8BE89-6651-4a0f-87A5-85E92F38ED4D} Provider=\"Qi.Wang\" DriverVer = 02/22/2001,0.0.0.1 [SourceDisksNames] 1=%DiskId% [SourceDisksFiles] NS001.sys=1,objfre\\i386 [ClassInstall32] Addreg=TokenClass [TokenClass] HKR,,,,%ClassName% HKR,,Icon,,\"-5\" [DestinationDirs] DefaultDestDir=12 [Manufacturer] %Mfg%=MfgDeviceSection [MfgDeviceSection] %DeviceDesc%=Token.install,PCI\\VEN_8781&DEV_7883 [Token.install] CopyFiles=@NS001.sys [Token.install.Services] AddService =Token,%SPSVCINST_ASSOCSERVICE%,TokenService [TokenService] ServiceType = %SERVICE_KERNEL_DRIVER% StartType = %SERVICE_MANUAL_START% ErrorControl = %SERVICE_ERROR_NORMAL% ServiceBinary = %12%\\NS001.sys [Strings] ClassName =\"随便你\" DeviceDesc =\"随便你\" DiskId = \"随便你\" Mfg=\"随便你\" SPSVCINST_ASSOCSERVICE = 0x00000002 SERVICE_KERNEL_DRIVER = 1 SERVICE_MANUAL_START = 3 SERVICE_ERROR_NORMAL = 1 |
|
6楼#
发布于:2002-05-08 12:42
注意VEN 与 DEV得合你的硬件板卡一致
%DeviceDesc%=Token.install,PCI\\VEN_8781&DEV_7883 NS001.sys是最后要拷贝得驱动程序文件,和你用build生成的文件一致。 |
|
7楼#
发布于:2002-05-08 13:00
在HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Enum\\PCI里面有硬件信息的,就是VEN...什么的那个。没有驱动的时候,是unknown class
|
|
8楼#
发布于:2002-05-08 14:01
wangqins
非常感谢!我就这样做了给你10分吧,以后有问题再问你!给我你的 qq,有机会聊聊?我的qq:20418574 |
|
|