Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

INF file for an ACPI button filter

255 views
Skip to first unread message

Paul Turelinckx

unread,
Jul 24, 2009, 6:27:02 AM7/24/09
to
Hi,

We want to inform our application when any of the ACPI buttons is activated.
As many did before me, I started from the toaster filter in the kmdf examples.

However, when installing the driver using "devcon install devupper.sys
ACPI\FixedButton" I get following error in the setupapi.log: "Error
0xe0000219: The installation failed because a function driver was not
specified for this device instance."

This is a part of the inf file that I used (coinstaller stuff omitted):

[Version]
Signature = "$WINDOWS NT$"
ClassGuid = {4D36E97D-E325-11CE-BFC1-08002BE10318}
Class = System
Provider = %MSFT%
DriverVer=07/24/2009,6.0.6001.18000

[DestinationDirs]
DefaultDestDir = 12

[Manufacturer]
%StdMfg%=Standard,NTx86

; For Win2K
[Standard]
%ToasterFilter.DeviceDesc%=ToasterFilter, ACPI\FixedButton

; For XP and later
[Standard.NTx86]
%ToasterFilter.DeviceDesc%=ToasterFilter, ACPI\FixedButton

[ToasterFilter.NT]
CopyFiles=ToasterFilter.NT.Copy

[ToasterFilter.NT.Copy]
devupper.sys

[ToasterFilter.NT.HW]
AddReg = ToasterFilter.NT.HW.AddReg

[ToasterFilter.NT.HW.AddReg]
HKR,,"UpperFilters",0x00010000,"DevUpper"

[ToasterFilter.NT.Services]
;Do not specify SPSVCINST_ASSOCSERVICE on filter drivers.
AddService = DevUpper,, filter_Service_Inst

[filter_Service_Inst]
DisplayName = %filter.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 3 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\DevUpper.sys

Is there anyone who can tell me what I'm missing here? I have little inf
file experience, so I would also appreciate some good reference or book about
writing inf files.

Thanks.

Mike [MSFT]

unread,
Jul 29, 2009, 8:37:58 PM7/29/09
to
It looks like you are specifying a .SYS file where devcon is expecting a
.INF file.

http://msdn.microsoft.com/en-us/library/ms792840.aspx

-Mike

"Paul Turelinckx" <nos...@turnhout.tokheim.com> wrote in message
news:27487F95-ABEF-47D7...@microsoft.com...

Paul Turelinckx

unread,
Jul 30, 2009, 3:38:02 AM7/30/09
to
Mike,

Sorry, I have made a typo in this post.
According to the setupapi logfile, I ran devcon with the proper parameters:

[SetupAPI Log]
OS Version = 5.1.2600 Service Pack 2
Platform ID = 2 (NT)
Service Pack = 2.0
Suite = 0x0100
Product Type = 1
Architecture = x86
[2009/07/24 01:22:31 984.118 Driver Install]
#-406 Obtaining rollback information for device
"ACPI\FIXEDBUTTON\2&DABA3FF&0":
#-019 Searching for hardware ID(s): acpi\fixedbutton,*fixedbutton
#-199 Executing "E:\filter\devcon.exe" with command line: devcon install
devupper.inf ACPI\FixedButton

Paul.

Mike [MSFT]

unread,
Aug 5, 2009, 4:28:28 PM8/5/09
to
Can you include the rest of the log section that shows the error as well?

My guess is that you can't add a filter driver using the INF in this manner,
but that's just a guess.

Presumptively the device already has a function driver installed? I'm a
little bit more sure you can't add a filter driver to a device that doesn't
have a function driver.

-Mike

"Paul Turelinckx" <nos...@turnhout.tokheim.com> wrote in message

news:BA1E3DB1-63D0-4F26...@microsoft.com...

Paul Turelinckx

unread,
Aug 6, 2009, 3:25:01 AM8/6/09
to
Mike,

Thanks for looking into this matter. I did not yet further investigate this
myself.
I have add the logfile contents for the installation attempt.
Please note that I will not be able to respond on this newsgroup for the
coming weeks.

Paul.

[SetupAPI Log]
OS Version = 5.1.2600 Service Pack 2
Platform ID = 2 (NT)
Service Pack = 2.0
Suite = 0x0100
Product Type = 1
Architecture = x86
[2009/07/24 01:22:31 984.118 Driver Install]
#-406 Obtaining rollback information for device
"ACPI\FIXEDBUTTON\2&DABA3FF&0":
#-019 Searching for hardware ID(s): acpi\fixedbutton,*fixedbutton
#-199 Executing "E:\filter\devcon.exe" with command line: devcon install
devupper.inf ACPI\FixedButton

#I063 Selected driver installs from section [NO_DRV] in
"c:\windows\inf\machine.inf".
#I320 Class GUID of device remains: {4D36E97D-E325-11CE-BFC1-08002BE10318}.
#I060 Set selected driver.
[2009/07/24 01:22:31 984.112]


#-199 Executing "E:\filter\devcon.exe" with command line: devcon install
devupper.inf ACPI\FixedButton

#I060 Set selected driver.


#-019 Searching for hardware ID(s): acpi\fixedbutton,*fixedbutton

#I022 Found "ACPI\FixedButton" in e:\filter\devupper.inf; Device: "ACPI
button Upper Device Filter"; Driver: "ACPI button Upper Device Filter";
Provider: "Tokheim"; Mfg: "(Standard system devices)"; Section name:
"ToasterFilter".
#I087 Driver node not trusted, rank changed from 0x00000000 to 0x00008000.
#I023 Actual install section: [ToasterFilter.NT]. Rank: 0x00008000.
Effective driver date: 07/24/2009.
#-166 Device install function: DIF_SELECTBESTCOMPATDRV.
#I063 Selected driver installs from section [ToasterFilter] in
"e:\filter\devupper.inf".
#I320 Class GUID of device remains: {4D36E97D-E325-11CE-BFC1-08002BE10318}.
#I060 Set selected driver.
#I058 Selected best compatible driver.
#-124 Doing copy-only install of "ACPI\FIXEDBUTTON\2&DABA3FF&0".
#E360 An unsigned or incorrectly signed file "e:\filter\devupper.inf" for
driver "ACPI button Upper Device Filter" will be installed (Policy=Ignore).
Error 0xe000022f: The third-party INF does not contain digital signature
information.
#-024 Copying file "e:\filter\devupper.sys" to
"C:\WINDOWS\system32\DRIVERS\devupper.sys".
#E360 An unsigned or incorrectly signed file "e:\filter\devupper.inf" for
driver "ACPI button Upper Device Filter" will be installed (Policy=Ignore).
Error 0xe000022f: The third-party INF does not contain digital signature
information.
#-336 Copying file "e:\filter\WdfCoInstaller01007.dll" to
"C:\WINDOWS\system32\WdfCoInstaller01007.dll" via temporary file
"C:\WINDOWS\system32\SET9.tmp".
#E360 An unsigned or incorrectly signed file "e:\filter\devupper.inf" for
driver "ACPI button Upper Device Filter" will be installed (Policy=Ignore).
Error 0xe000022f: The third-party INF does not contain digital signature
information.
#-166 Device install function: DIF_REGISTER_COINSTALLERS.
#I056 Coinstallers registered.
#-166 Device install function: DIF_INSTALLINTERFACES.
#-011 Installing section [ToasterFilter.NT.Interfaces] from
"e:\filter\devupper.inf".
#I054 Interfaces installed.
#-166 Device install function: DIF_INSTALLDEVICE.
#I123 Doing full install of "ACPI\FIXEDBUTTON\2&DABA3FF&0".
#E360 An unsigned or incorrectly signed file "e:\filter\devupper.inf" for
driver "ACPI button Upper Device Filter" will be installed (Policy=Ignore).
Error 0xe000022f: The third-party INF does not contain digital signature
information.
#W100 Query-removal during install of "ACPI\FIXEDBUTTON\2&DABA3FF&0" was
vetoed by "ACPI\FixedButton\2&daba3ff&0" (veto type 6: PNP_VetoDevice).
#W104 Device "ACPI\FIXEDBUTTON\2&DABA3FF&0" required reboot: Query remove
failed (install) CfgMgr32 returned: 0x17: CR_REMOVE_VETOED.
#I121 Device install of "ACPI\FIXEDBUTTON\2&DABA3FF&0" finished successfully.
[2009/07/24 01:22:33 984.120]


#-199 Executing "E:\filter\devcon.exe" with command line: devcon install
devupper.inf ACPI\FixedButton

#I060 Set selected driver.


#-019 Searching for hardware ID(s): acpi\fixedbutton

#I022 Found "ACPI\FixedButton" in e:\filter\devupper.inf; Device: "ACPI
button Upper Device Filter"; Driver: "ACPI button Upper Device Filter";
Provider: "Tokheim"; Mfg: "(Standard system devices)"; Section name:
"ToasterFilter".
#I087 Driver node not trusted, rank changed from 0x00000000 to 0x00008000.
#I023 Actual install section: [ToasterFilter.NT]. Rank: 0x00008000.
Effective driver date: 07/24/2009.
#-166 Device install function: DIF_SELECTBESTCOMPATDRV.
#I063 Selected driver installs from section [ToasterFilter] in
"e:\filter\devupper.inf".
#I320 Class GUID of device remains: {4D36E97D-E325-11CE-BFC1-08002BE10318}.
#I060 Set selected driver.
#I058 Selected best compatible driver.
#-124 Doing copy-only install of "ROOT\SYSTEM\0003".
#E360 An unsigned or incorrectly signed file "e:\filter\devupper.inf" for
driver "ACPI button Upper Device Filter" will be installed (Policy=Ignore).
Error 0xe000022f: The third-party INF does not contain digital signature
information.
#-024 Copying file "e:\filter\devupper.sys" to
"C:\WINDOWS\system32\DRIVERS\devupper.sys".
#E360 An unsigned or incorrectly signed file "e:\filter\devupper.inf" for
driver "ACPI button Upper Device Filter" will be installed (Policy=Ignore).
Error 0xe000022f: The third-party INF does not contain digital signature
information.
#-336 Copying file "e:\filter\WdfCoInstaller01007.dll" to
"C:\WINDOWS\system32\WdfCoInstaller01007.dll" via temporary file
"C:\WINDOWS\system32\SETD.tmp".
#E360 An unsigned or incorrectly signed file "e:\filter\devupper.inf" for
driver "ACPI button Upper Device Filter" will be installed (Policy=Ignore).
Error 0xe000022f: The third-party INF does not contain digital signature
information.
#-166 Device install function: DIF_REGISTER_COINSTALLERS.
#I056 Coinstallers registered.
#-166 Device install function: DIF_INSTALLINTERFACES.
#-011 Installing section [ToasterFilter.NT.Interfaces] from
"e:\filter\devupper.inf".
#I054 Interfaces installed.
#-166 Device install function: DIF_INSTALLDEVICE.
#I123 Doing full install of "ROOT\SYSTEM\0003".
#E360 An unsigned or incorrectly signed file "e:\filter\devupper.inf" for
driver "ACPI button Upper Device Filter" will be installed (Policy=Ignore).
Error 0xe000022f: The third-party INF does not contain digital signature
information.
#-035 Processing service Add/Delete section [ToasterFilter.NT.Services].
#E275 Error while installing services. Error 0xe0000219: The installation

failed because a function driver was not specified for this device instance.

#E122 Device install failed. Error 0xe0000219: The installation failed

because a function driver was not specified for this device instance.

#E157 Default installer failed. Error 0xe0000219: The installation failed

because a function driver was not specified for this device instance.

#W422 Coinstaller 2 (Post Processing) modified status. No Error.

Mike [MSFT]

unread,
Aug 12, 2009, 3:17:13 PM8/12/09
to
I can't be certain but it looks like there was no function driver loaded on
the devnode you are trying to add a filter driver to. You need to install a
function driver first.

-Mike

"Paul Turelinckx" <nos...@turnhout.tokheim.com> wrote in message

news:88C712D9-1B94-458F...@microsoft.com...

Paul Turelinckx

unread,
Aug 27, 2009, 9:08:01 AM8/27/09
to
That seems to be correct.
I would expect that there always be a function driver for Windows to access
the ACPI buttons (power button, laptop lid, etc.).

Does this mean that I need to write a function driver to query for the ACPI
buttons? I assume I need to create an operation region with access type
ACPI_OPREGION_ACCESS_AS_COOKED, and a provide an operation region handler
callback. Is there any sample code available that shows how this is done?

Thanks,
Paul.

Mike [MSFT]

unread,
Aug 27, 2009, 2:46:12 PM8/27/09
to
> Does this mean that I need to write a function driver to query for the
> ACPI
> buttons?

I would assume so. There are probably some useful samples in the WDK.

-Mike

"Paul Turelinckx" <nos...@turnhout.tokheim.com> wrote in message

news:1AE189C7-67AF-4623...@microsoft.com...

0 new messages