kxgchina
驱动小牛
驱动小牛
  • 注册日期2002-04-01
  • 最后登录2005-05-05
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1448回复:13

Wdm1例子的安装问题,大侠救命!!!!

楼主#
更多 发布于:2003-06-03 10:44
我直接编译的chris cant的那本Windows WDM设备驱动程序开发指南书上的例子wdm1,编译通过了,生成了free和checked环境下的sys文件
因为我把wdm1文件夹放在在d盘下wdmtest目录下了,所以我对他的inf文件进行了稍微的修改,如下:
; Wdm1free.Inf - install information file
; Copyright ?1998,1999 Chris Cant, PHD Computer Consultants Ltd

[Version]
Signature=\"$Chicago$\"
Class=Unknown
Provider=%WDMBook%
DriverVer=05/19/1999,1.0.6.0

[Manufacturer]
%WDMBook% = WDM.Book

[WDM.Book]
%Wdm1%=Wdm1.Install

[DestinationDirs]
Wdm1.Files.Driver=10,System32\\Drivers
Wdm1.Files.Driver.NTx86=10,System32\\Drivers

[SourceDisksNames]
1=\"Wdm1\",Disk1,,
  ~~~~~~~~~~~~~~~~改了这个地方,不知道对不对?


[SourceDisksFiles]
 Wdm1.sys=1,obj\\i386\\free

[SourceDisksFiles.x86]
Wdm1.sys=1,objfre\\i386

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Windows 98

[Wdm1.Install]
CopyFiles=Wdm1.Files.Driver
AddReg=Wdm1.AddReg

[Wdm1.AddReg]
HKR,,DevLoader,,*ntkern
HKR,,NTMPDriver,,Wdm1.sys

[Wdm1.Files.Driver]
Wdm1.sys

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Windows 2000

[Wdm1.Install.NTx86]
CopyFiles=Wdm1.Files.Driver.NTx86

[Wdm1.Files.Driver.NTx86]
Wdm1.sys,,,%COPYFLG_NOSKIP%

[Wdm1.Install.NT.Services]
AddService = Wdm1, %SPSVCINST_ASSOCSERVICE%, Wdm1.Service

[Wdm1.Service]
DisplayName    = %Wdm1.ServiceName%
ServiceType    = %SERVICE_KERNEL_DRIVER%
StartType      = %SERVICE_DEMAND_START%
ErrorControl   = %SERVICE_ERROR_NORMAL%
ServiceBinary  = %10%\\System32\\Drivers\\Wdm1.sys

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Strings

[Strings]
WDMBook=\"WDM Book\"
Wdm1=\"WDM Book: Wdm1 Example, free build\"
Wdm1.ServiceName=\"WDM Book Wdm1 Driver\"

SPSVCINST_ASSOCSERVICE=0x00000002 ; Driver service is associated with device being installed
COPYFLG_NOSKIP=2 ; Do not allow user to skip file
SERVICE_KERNEL_DRIVER=1
SERVICE_AUTO_START=2
SERVICE_DEMAND_START=3
SERVICE_ERROR_NORMAL=1


可是在安装的时候,在选择了inf文件的位置的时候,他总是提示如下:
“指定的位置不包含有关硬件的信息”,这是怎么回事?我都搞了两天了,inf文件我也看了,没有什么问题?还有驱动程序的.rc文件和驱动inf文件有什么关系吗?驱动inf文件有什么关于硬件的信息啊??
Gong_XG
驱动太牛
驱动太牛
  • 注册日期2002-10-01
  • 最后登录2010-11-25
  • 粉丝0
  • 关注0
  • 积分313分
  • 威望46点
  • 贡献值0点
  • 好评度4点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-06-03 10:52
把sys文件放到他的一个子目录\\sys\\obj\\i386下,\\sys\\objchk\\i386下试试。
kxgchina
驱动小牛
驱动小牛
  • 注册日期2002-04-01
  • 最后登录2005-05-05
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-06-03 19:48
我是win2000的系统啊!
blue_wind
驱动中牛
驱动中牛
  • 注册日期2002-11-24
  • 最后登录2006-11-30
  • 粉丝0
  • 关注0
  • 积分16分
  • 威望3点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
地板#
发布于:2003-06-04 01:13
我在98下改了路径,他找不到文件会弹出对话筐的,让你输入路径。
所以路径并不是很重要的,只是方便用户的。
好东西大家共享,没必要做从复的劳动! 冒着微软的炮火前进!前进!前进!进!
windyguy
驱动牛犊
驱动牛犊
  • 注册日期2003-05-07
  • 最后登录2004-05-28
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2003-06-04 07:58
rc文件没什么关系。安装的时候指定是Unknown设备试试。
kxgchina
驱动小牛
驱动小牛
  • 注册日期2002-04-01
  • 最后登录2005-05-05
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2003-06-04 11:30
谢谢各位的回答,现在是这样的,我在inf文件中添加了一个classGUID以后,他不再提示\"指定的位置不包含有关硬件的信息“
但是现在在最后提示:
设备安装时,出现错误
在inf中找不到所需的区域
情大侠看一下下面的这个inf文件,他所指的区域是那一个啊??
[Version]
Signature=\"$Chicago$\"
Class=Unknown
classGUID={75443cc0-8b80-11d7-9158-86ebb9d50f3d}
Provider=%WDMBook%
DriverVer=06/03/2003,1.0.0.1

[Manufacturer]
%WDMBook% = WDM.Book

[WDM.Book]
%Wdm1%=Wdm1.Install

[DestinationDirs]
Wdm1.Files.Driver=10,System32\\Drivers
;Wdm1.Files.Driver.NTx86=10,System32\\Drivers

[SourceDisksNames]
1=\"myWDM1\",,,

;[SourceDisksFiles]
;myWDM1.sys=1,obj\\i386\\free

;[SourceDisksFiles.x86]
; myWDM1.sys=1,objfre\\i386
[SourceDisksFiles]
myWDM1.sys=1,objfre\\i386

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Windows 98

[Wdm1.Install]
CopyFiles=Wdm1.Files.Driver
AddReg=Wdm1.AddReg

[Wdm1.AddReg]
HKR,,DevLoader,,*ntkern
HKR,,NTMPDriver,,myWDM1.sys

[Wdm1.Files.Driver]
myWDM1.sys

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Windows 2000

[Wdm1.Install.NT]
CopyFiles=Wdm1.Files.Driver.NT

[Wdm1.Files.Driver.NT]
myWDM1.sys,,,%COPYFLG_NOSKIP%

[Wdm1.Install.NT.Services]
AddService = myWDM1, %SPSVCINST_ASSOCSERVICE%, Wdm1.Service

[Wdm1.Service]
DisplayName    = %Wdm1.ServiceName%
ServiceType    = %SERVICE_KERNEL_DRIVER%
StartType      = %SERVICE_DEMAND_START%
ErrorControl   = %SERVICE_ERROR_NORMAL%
ServiceBinary  = %10%\\System32\\Drivers\\myWDM1.sys

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Strings

[Strings]
WDMBook=\"ZJUEE319\"
Wdm1=\"MYWDM: Wdm1 Example, free build\"
Wdm1.ServiceName=\"MY WDM  Wdm1 Driver\"

SPSVCINST_ASSOCSERVICE=0x00000002 ; Driver service is associated with device being installed
COPYFLG_NOSKIP=2 ; Do not allow user to skip file
SERVICE_KERNEL_DRIVER=1
SERVICE_AUTO_START=2
SERVICE_DEMAND_START=3
SERVICE_ERROR_NORMAL=1
kxgchina
驱动小牛
驱动小牛
  • 注册日期2002-04-01
  • 最后登录2005-05-05
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2003-06-04 15:18
第二个问题已解决,第一个不包含硬件信息的问题还没有,大牛们出手把,一定会给分的!!
blue_wind
驱动中牛
驱动中牛
  • 注册日期2002-11-24
  • 最后登录2006-11-30
  • 粉丝0
  • 关注0
  • 积分16分
  • 威望3点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2003-06-05 10:38
这个问题我也碰到,
; Windows 2000

[Wdm1.Install.NTx86]
CopyFiles=Wdm1.Files.Driver.NTx86

[Wdm1.Files.Driver.NTx86]
Wdm1.sys,,,%COPYFLG_NOSKIP%

[Wdm1.Install.NT.Services]
AddService = Wdm1, %SPSVCINST_ASSOCSERVICE%, Wdm1.Service

[Wdm1.Service]
DisplayName = %Wdm1.ServiceName%
ServiceType = %SERVICE_KERNEL_DRIVER%
StartType = %SERVICE_DEMAND_START%
ErrorControl = %SERVICE_ERROR_NORMAL%
ServiceBinary = %10%\\System32\\Drivers\\Wdm1.sys
是这里的一项有问题,具体哪项不记得,你好好研究研究,
好东西大家共享,没必要做从复的劳动! 冒着微软的炮火前进!前进!前进!进!
kxgchina
驱动小牛
驱动小牛
  • 注册日期2002-04-01
  • 最后登录2005-05-05
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2003-06-06 11:14
楼上的大哥,是那一句啊?我对着INF文件的文档看了半天,也没看出那句有问题啊?
aKnightChen
驱动牛犊
驱动牛犊
  • 注册日期2003-05-13
  • 最后登录2005-04-12
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2003-06-06 16:02
重新安装WIN2000,保证你能成功安装WDM1.
我也一样,原来机子不行,后来我换了两台新的WIN2000,都能成功安装.
 :cool:
kxgchina
驱动小牛
驱动小牛
  • 注册日期2002-04-01
  • 最后登录2005-05-05
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
10楼#
发布于:2003-06-06 16:14
谢谢楼上的大侠!!
重要的是原因在那???因为有人没有重装系统,通过改inf文件也可以了啊?
qinxg
驱动小牛
驱动小牛
  • 注册日期2002-11-15
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分37分
  • 威望27点
  • 贡献值0点
  • 好评度5点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2003-06-06 16:15
[WDM.Book]
%Wdm1%=Wdm1.Install,UnkownWdmBook
加个硬件ID试试.

kxgchina
驱动小牛
驱动小牛
  • 注册日期2002-04-01
  • 最后登录2005-05-05
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
12楼#
发布于:2003-06-06 17:07
谢谢楼上的大侠
想问一下,这儿的硬件id到底有什么作用?
我确实把那本书上的inf文件的硬件id删除了,可是我感觉他好像没有什么用处啊?sys文件可以区分硬件id吗?
blue_wind
驱动中牛
驱动中牛
  • 注册日期2002-11-24
  • 最后登录2006-11-30
  • 粉丝0
  • 关注0
  • 积分16分
  • 威望3点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
13楼#
发布于:2003-06-06 23:37
简单的说是硬件设备在PNP兼容总线上声明是返回的pnp标识符。
好东西大家共享,没必要做从复的劳动! 冒着微软的炮火前进!前进!前进!进!
游客

返回顶部