Thank you again Doron, How can I force HIDclass device to be recognized as
Mouse? Is it something that I should do in INF files?
The filter driver I used earlier was taken from firefly example of windows
and it expected the mouse device. But recently the vendor has changed the
descriptor to HIDclass and the filter driver doesn’t work anymore.
This is what I used earlier:
[Version]
Signature=“$Windows NT$”
Class=Mouse
ClassGUID={4D36E96F-E325-11CE-BFC1-08002BE10318}
Provider=%Provider%
DriverVer=05/27/2014,1.0.0.1
CatalogFile=KmdfSamples.cat
[DestinationDirs]
DefaultDestDir = 12 ; DIRID_DRIVERS
[ControlFlags]
; We don’t want our device to be installable via the non-PnP hardware
dialogs
ExcludeFromSelect = *
; Manufacturer Section
; ---------------------------------------------------------
[Manufacturer]
%ShinyThings%=ShinyThingsMfg,NTx86,NTamd64
; Devices Section for Win2K
; ---------------------------------------------------------
[ShinyThingsMfg]
%HID\Vid_0977&Pid_8888.DeviceDesc%=shinyfilter_Inst,
HID\Vid_0977&Pid_8888&REV_0100&Col02
; Devices Section for XP and above
; ---------------------------------------------------------
[ShinyThingsMfg.NTx86]
%HID\Vid_0977&Pid_8888.DeviceDesc%=shinyfilter_Inst,
HID\Vid_0977&Pid_8888&REV_0100&Col02
; For amd64
; ---------------------------------------------------------
[ShinyThingsMfg.NTamd64]
%HID\Vid_0977&Pid_8888.DeviceDesc%=shinyfilter_Inst,
HID\Vid_0977&Pid_8888&REV_0100&Col02
; Install Section for Windows 2000 & Windows XP
; ---------------------------------------------------------
[shinyfilter_Inst.NT]
Include = MSMOUSE.INF
Needs = HID_Mouse_Inst.NT
CopyFiles = shinyfilter_Inst_CopyFiles.NT
[shinyfilter_Inst.NT.HW]
Include = MSMOUSE.INF
Needs = HID_Mouse_Inst.NT
AddReg = shinyfilter_Inst_HWAddReg.NT
[shinyfilter_Inst_HWAddReg.NT]
HKR,“UpperFilters”,0x00010000,“shinyfilter”
[shinyfilter_Inst_CopyFiles.NT]
shinyfilter.sys
[shinyfilter_Inst.NT.Services]
Needs = HID_Mouse_Inst.NT.Services
AddService = shinyfilter, , shinyfilter_Service_Inst
[shinyfilter_Service_Inst]
DisplayName = %shinyfilter.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 3 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\shinyfilter.sys
LoadOrderGroup = PNP Filter
; Source Media Section
; ---------------------------------------------------------
[SourceDisksNames]
1 = %DiskName%
[SourceDisksFiles]
shinyfilter.sys = 1
WdfCoInstaller01009.dll = 1
;
;— shinyfilter_Inst WDF Coinstaller installation ------
;
[DestinationDirs]
shinyfilter_Inst_CoInstaller_CopyFiles = 11
[shinyfilter_Inst.NT.CoInstallers]
AddReg=shinyfilter_Inst_CoInstaller_AddReg
CopyFiles=shinyfilter_Inst_CoInstaller_CopyFiles
[shinyfilter_Inst_CoInstaller_AddReg]
HKR,CoInstallers32,0x00010000, “WdfCoInstaller01009.dll,WdfCoInstaller”
[shinyfilter_Inst_CoInstaller_CopyFiles]
WdfCoInstaller01009.dll
[shinyfilter_Inst.NT.Wdf]
KmdfService = shinyfilter, shinyfilter_wdfsect
[shinyfilter_wdfsect]
KmdfLibraryVersion = 1.9
; Strings Section
; ---------------------------------------------------------
[Strings]
; Provider names
Provider = “Shiny Things”
; Mfg names
ShinyThings = “Random”
; Service names
shinyfilter.SvcDesc = “shinyfilter Service”
; Media names
DiskName = “shinyfilter Driver Disk”
; HID device IDs
HID\Vid_0977&Pid_8888.DeviceDesc = “Trackpad”
; Standard defs
SPSVCINST_TAGTOFRONT = 0x00000001
SPSVCINST_ASSOCSERVICE= 0x00000002
SERVICE_KERNEL_DRIVER = 1
SERVICE_BOOT_START = 0
SERVICE_SYSTEM_START = 1
SERVICE_AUTO_START = 2
SERVICE_ERROR_NORMAL = 1
SERVICE_ERROR_IGNORE = 0
REG_EXPAND_SZ = 0x00020000
REG_DWORD = 0x00010001
REG_SZ = 0x00000000
But now, the trackpad doesn’t get recognized as Mouse in Device manager,
its being shown as HID class device.
On Tue, Jun 10, 2014 at 1:45 PM, Doron Holan
wrote:
> Add your filter as a device filter and you can see MOUSE_INPUT_DATA
> arrays in your ServiceCallback. You can see x,y, button data and modify as
> you want
>
>
>
> From: xxxxx@lists.osr.com [mailto:
> xxxxx@lists.osr.com] *On Behalf Of *Anshul Jain
> Sent: Tuesday, June 10, 2014 1:26 PM
>
> To: Windows System Software Devs Interest List
> Subject: Re: [ntdev] Filter Driver
>
>
>
> Hi Doron,
>
>
>
> I would like to implement some filtering of X,Y coordinates and filter the
> noise from trackpad events.
>
>
>
> Thanks,
>
> Anshul
>
>
>
> On Fri, Jun 6, 2014 at 3:55 PM, Doron Holan
> wrote:
>
> And what do you want the filter to change?
>
> d
>
> Bent from my phone
> ------------------------------
>
> *From: *xxxxx@gmail.com
> *Sent: *6/6/2014 1:27 PM
> *To: *Windows System Software Devs Interest List
> *Subject: *RE:[ntdev] Filter Driver
>
> Thank you Tim for your reply. I did plug it in the device gets recognized
> as HID Compliant device.
>
> I also ran USBlyzer on it and I see packets coming from the device which
> is reporting X,Y coordiantes of the trackpad.
>
> —
> NTDEV is sponsored by OSR
>
> Visit the list at: http://www.osronline.com/showlists.cfm?list=ntdev
>
> OSR is HIRING!! See http://www.osr.com/careers
>
> For our schedule of WDF, WDM, debugging and other seminars visit:
> http://www.osr.com/seminars
>
> To unsubscribe, visit the List Server section of OSR Online at
> http://www.osronline.com/page.cfm?name=ListServer
>
>
> —
> NTDEV is sponsored by OSR
>
> Visit the list at: http://www.osronline.com/showlists.cfm?list=ntdev
>
> OSR is HIRING!! See http://www.osr.com/careers
>
> For our schedule of WDF, WDM, debugging and other seminars visit:
> http://www.osr.com/seminars
>
> To unsubscribe, visit the List Server section of OSR Online at
> http://www.osronline.com/page.cfm?name=ListServer
>
>
>
> — NTDEV is sponsored by OSR Visit the list at:
> http://www.osronline.com/showlists.cfm?list=ntdev OSR is HIRING!! See
> http://www.osr.com/careers For our schedule of WDF, WDM, debugging and
> other seminars visit: http://www.osr.com/seminars To unsubscribe, visit
> the List Server section of OSR Online at
> http://www.osronline.com/page.cfm?name=ListServer
>
> —
> NTDEV is sponsored by OSR
>
> Visit the list at: http://www.osronline.com/showlists.cfm?list=ntdev
>
> OSR is HIRING!! See http://www.osr.com/careers
>
> For our schedule of WDF, WDM, debugging and other seminars visit:
> http://www.osr.com/seminars
>
> To unsubscribe, visit the List Server section of OSR Online at
> http://www.osronline.com/page.cfm?name=ListServer
>