阅读:1379回复:7
100分求救
各位大哥们,小弟现有几个问题请教:
1)如果现在想对一个设备进行操作,此设备已经安装了驱动,但是驱动是厂商的,如果要对此设备进行操作,应该怎么办? 照我的理解,首先是要得到设备的symbolic link,但是symbolic link怎么能够得到,还望大家告知一二。谢谢。 2)还有设备的GUID,请问这个GUID应该到哪可以找到呢? |
|
沙发#
发布于:2004-11-04 18:10
各位大哥们,小弟现有几个问题请教: 你的是啥设备? GUID在该设备驱动安装文件里的inf里可以找到 |
|
|
板凳#
发布于:2004-11-04 18:15
到inf文件里找一找
|
|
|
地板#
发布于:2004-11-04 19:12
通过guid可以找到symbolic link
|
|
|
地下室#
发布于:2004-11-05 08:51
通过inf文件找,我看了一个inf文件,如下:
; Wdm1checked.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.5.0 [Manufacturer] %WDMBook% = WDM.Book [WDM.Book] %Wdm1%=Wdm1.Install, *wdmBook\Wdm1 [DestinationDirs] Wdm1.Files.Driver=10,System32\Drivers Wdm1.Files.Driver.NTx86=10,System32\Drivers [SourceDisksNames] 1="Wdm1 build directory",,, [SourceDisksFiles] Wdm1.sys=1,obj\i386\checked [SourceDisksFiles.x86] Wdm1.sys=1,objchk\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.NTx86.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, checked 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 然而它的设备的guid却是DEFINE_GUID(WDM1_GUID, 0xc0cf0640, 0x5f6e, 0x11d2, 0xb6, 0x77, 0x0, 0xc0, 0xdf, 0xe4, 0xc1, 0xf3); 请问两位,应该怎么对应呢?谢谢 |
|
5楼#
发布于:2004-11-05 09:16
whmjack兄,在我做驱动的印象,guid在inf好像找不到,告诉你一个找的方法:在一个没有加载过你驱动的计算机上加载驱动,然后看HcM\SYSTEM\CONTROLSET001\CONTROL\DEVICECLASS(可能我)下增加了那个新键值就是你驱动的。
|
|
6楼#
发布于:2004-11-05 10:44
你这好像是WDM设备驱动开发指南这本书里面的例子吧,可惜书不在手边:(
另外wozhuce说的应该可行。 |
|
|
7楼#
发布于:2004-11-05 16:54
标准设备如:printer,USB,Display,MEDIA,inf里面会有的,且DDK头文件里也有定义,并且都是固定的
如: Class=USB ClassGUID={36FC9E60-C465-11CF-8056-444553540000} 如果Class=Unknown,未知设备,或虚拟设备 GUID就不是固定的了,一般都是自己定义的, 好像有个工具可以产生GUID 要想知道可以到注册表搜索unknown 一般都在 HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Class 下面,有时也在别处,最好全搜索 |
|
|