Jes
Jes
驱动牛犊
驱动牛犊
  • 注册日期2001-07-11
  • 最后登录
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:2812回复:5

关于INF安装驱动程序的几个问题

楼主#
更多 发布于:2001-07-11 18:17
我是个新手,问的问题可能比较幼稚,望不吝赐教。
下面是我安装USB驱动程序的INF文件,安装时老说指定位置
不到硬件信息,我的问题是:
1. ClassGUID是不是用GuidGen随便产生一个就行?
2. 硬件ID是如何确定的?这里我随便给了一个。
3. 是不是还有其他问题?
谢谢大家!

;; Ut.inf
;--------- Version Section --------------
[Version]
Signature="$CHICAGO$"
Provider=%ProviderName%
Class=NewDeviceClass
ClassGUID={ff646f80-8def-11d2-9449-00105a075f6b}

;--------- SourceDiskNames and SourceDiskFiles Section ----
[SourceDisksNames]
1 = "Install Disk",Disk1,,
[SourceDisksFiles]
Ut.sys = 1,,

;--------- ClassInstall/ClassInstall32 Section ------------
; 9X Style
[ClassInstall]
Addreg=Class_AddReg
; NT Style
[ClassInstall32]
Addreg=Class_AddReg
[Class_AddReg]
HKR,,,,%DeviceClassName%
HKR,,Icon,,"-18"

;--------- DestinationDirs Section -------------------------
[DestinationDirs]
Ut_Files_Driver = 10,System32\Drivers

;--------- Manufacturer and Models Sections ---------------
[Manufacturer]
%MfgName%=Mfg0
[Mfg0]
%DeviceDesc%=Ut_DDI, USB\VID_0400&PID_0010
;---------- DDInstall Sections ---------------------------
; --------- Windows 9X -----------------

[Ut_DDI]
CopyFiles=Ut_Files_Driver
AddReg=Ut_9X_AddReg

[Ut_9X_AddReg]
HKR,,DevLoader,,*ntkern
HKR,,NTMPDriver,,EVK9602.sys
HKR, "Parameters", "BreakOnEntry", 0x00010001, 0

; --------- Windows NT -----------------
[Ut_DDI.NT]
CopyFiles=Ut_Files_Driver
AddReg=Ut_NT_AddReg
[Ut_DDI.NT.Services]
Addservice = Ut, 0x00000002, Ut_AddService
[Ut_AddService]
DisplayName    = %SvcDesc%
ServiceType    = 1                  ; SERVICE_KERNEL_DRIVER
StartType      = 3                  ; SERVICE_DEMAND_START
ErrorControl   = 1                  ; SERVICE_ERROR_NORMAL
ServiceBinary  = %10%\System32\Drivers\EVK9602.sys
[Ut_NT_AddReg]
HKLM, "System\CurrentControlSet\Services\Ut\Parameters",\
"BreakOnEntry", 0x00010001, 0

; --------- Files (common) -------------
[Ut_Files_Driver]
EVK9602.sys

;--------- Strings Section -------------------------------
[Strings]
ProviderName="123"
MfgName="12345"
DeviceDesc="asdfasdf"
DeviceClassName="afsdefas"
SvcDesc="9602EVK"
jeosph
驱动中牛
驱动中牛
  • 注册日期2001-04-19
  • 最后登录2006-08-08
  • 粉丝0
  • 关注0
  • 积分96分
  • 威望11点
  • 贡献值0点
  • 好评度9点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2001-07-11 18:29
1)classGUID 不是随便定义的,在这里,应该是USB设备类。
2)另外,硬件ID,厂商ID不能随便给,一定要和你的设备上的硬件ID,厂商ID相匹配,难怪你安装是提示找不到硬件信息!
3)你定义了一个新的设备类,是可以的,但这种定义方式98,ME中可以用,2000中就不可以这样了,必须这样:
[CONTROLFLAG]

EXCLUDEFROMSELECT=***


Jes
Jes
驱动牛犊
驱动牛犊
  • 注册日期2001-07-11
  • 最后登录
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2001-07-11 21:08
Thank you very much!
现在还没重试,不过硬件ID不知道怎么可以获得?
我曾经用USBCheck试过,感觉不对。

另:这个网站对我帮助很大,我在论坛上看见好几个我也碰到
    过的问题,看了一些解答,感觉茅塞顿开,谢谢你们!
lvgx
驱动牛犊
驱动牛犊
  • 注册日期2001-05-27
  • 最后登录2018-05-30
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望100点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2001-07-13 10:27
1)classGUID 不是随便定义的,在这里,应该是USB设备类。
   是的,具体我没有试过,但是大致是这样的,如果用了已经有的
classGUID,比如我的设备是USB,但是我用的classGUID是显示器的,
那么在控制面板上,就回在显示器图标下出现安装的设备,设备名,
则需要INF另行指定。如果用GUIDGEN产生,那么都是在“未知设备”
图标下出现。没有具体做过,试试便知。

2)另外,硬件ID,厂商ID不能随便给,一定要和你的设备上的硬件ID,厂商ID相匹配,难怪你安装是提示找不到硬件信息!
  是的,安装驱动程序,就是根据硬件那里返回的信息,PID,VID,
还有就是硬件的接口信息(这个好象用到不是太多)

3)你定义了一个新的设备类,是可以的,但这种定义方式98,ME中可以用,2000中就不可以这样了,必须这样:
[CONTROLFLAG]
EXCLUDEFROMSELECT=***
   我这个倒没用到过,请详细说明一下,谢谢。
lvgx
lvyingf
游客
游客
地下室#
发布于:2001-07-18 12:00
VID和PID很容易知道啊,如果用WINDRIVER,直接在设备选项里就有了。如果没有什么工具,在系统检测到设备以后,去看一下注册表就知道了。在HKEY_LOCAL_MACHINE\Enum\USB\下面。
Jes
Jes
驱动牛犊
驱动牛犊
  • 注册日期2001-07-11
  • 最后登录
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2001-07-27 10:58
现在安装成了。
我开始给的硬件ID为USB\VID_0400&PID_0010
安装时会告诉我驱动程序不是为这个硬件设计的(大意)
也可以强行安装好象也没什么问题。
后来用NTDDK的一个工具USBVerify查出硬件ID为USB\VID_0400&PID_0007
修改以后安装成功。


谢谢大家帮助!!
游客

返回顶部