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

DIFxApp 2.0 won't install my driver - it doesn't think it's signed

489 views
Skip to first unread message

Bob K

unread,
Apr 23, 2005, 2:15:20 PM4/23/05
to
I thought I had this DIFxApp thing under control, but I just upgraded to
version 2.0 that was just released (I need the x64 support) and it seems to
have broken something. The install now aborts with the following log:

DIFXAPP: InstallDriverPackages
DIFXAPP: 'CustomActionData' property 'DIFxApp Version' is 2.0.
DIFXAPP: 'CustomActionData' property 'UI Level' is 5.
DIFXAPP: 'CustomActionData' property 'componentId' is
{33C87C1F-F8A4-4834-9F3D-A9026D067632}.
DIFXAPP: 'CustomActionData' property 'componentPath' is C:\Program
Files\company driver\Kernel_MF\.
DIFXAPP: 'CustomActionData' property 'flags' is 0x10.
DIFXAPP: 'CustomActionData' property 'installState' is 2.
DIFXAPP: 'CustomActionData' property 'ProductName' is driver.
DIFXAPP: 'CustomActionData' property 'ManufacturerName' is FBN Corporation.
DIFXAPP: INFO: ENTER: DriverPackageInstallW
DIFXAPP: INFO: Checking signature with catalog 'C:\Program Files\company
driver\Kernel_MF\driver.cat' ...
DIFXAPP: ERROR: Signature verification failed while checking integrity of
driver package 'driver.inf' ('C:\Program Files\company
driver\Kernel_MF\driver.inf'). (Error code 0xE0000244.)
DIFXAPP: INFO: Successfully removed {33C87C1F-F8A4-4834-9F3D-A9026D067632}
from reference list of driver store entry
DIFXAPP: INFO: RETURN: DriverPackageInstallW (0xE0000244)
DIFXAPP: ERROR encountered while installing driver package C:\Program
Files\company driver\Kernel_MF\driver.inf
DIFXAPP: InstallDriverPackages failed with error 0xE0000244
Action ended 7:46:31: InstallFinalize. Return value 3.

The driver is signed. If I use chktrust on the .cat file it reports that it
is properly signed. Is there any other utility that would be more
appropriate to use?

My only clue here is that maybe there is a file that is not included in the
signature that should be, or there is a file that is included that shouldn't
be.

How can I determine the problem?

My driver consists of a single .sys file. I also include a stripped .pdb
file. That means my .cdf file that creates the .cat file looks like:

[CatalogHeader]
name=driver.cat
[CatalogFiles]
driversys=driver.sys
driverinf=driver.inf
driverpdb=driver.pdb

I then sign the .cat file. The .inf file has an entry that points to the cat
file:

[Version]
Signature = "$Windows NT$"
Class = "Replication"
Provider = %Company%
DriverVer = 01/01/05,0.0.0.0
CatalogFile = driver.cat
DriverPackageType=FileSystemMinifilter
DriverPackageDisplayName=%DriverServiceDesc%


Any help or any idea on what to look for would be greatly appreciated!

This worked in DIFxApp 1.1!!!

Thanks!

Bob


usfinecats

unread,
Apr 23, 2005, 10:30:03 PM4/23/05
to
Bob, I was buried in a similar problem with 1.1 Difx. Sounds like the inf
file is not signed correctly.

I ended up Nuking the .CAT file each time I rebuilt my stuff. I then
recreated the .Cat file with signability.exe and then ran signcode.exe on
this result.

I had problem creating the cat file with MakeCat and I had problems trying
to overwrite the signatures in the CAT file if the Cat file had already been
signed.

Since then things are working well. Maybe these gyrations will work for
you also.

Bob K

unread,
Apr 24, 2005, 9:41:06 PM4/24/05
to
I do recreate the .cat file after each build. I assume that is necessary
since it hashes the files being signed. I use makecat.exe and have had no
trouble (as far as I can tell). What is "signability.exe"? I can't find any
reference to it.

I have gotten somewhere. I've removed the symbol file from the group of
files being signed. Having the pdb file signed worked on DIFxApp 1.1, but
doesn't seem to on 2.0. If I remove the pdb, then it WILL install on XP and
win2003. It WON'T install on a win2k machine, though. I get a slightly
different error on win2k:

DIFXAPP: ERROR: Driver package 'driver.inf' is unsigned. (Error code
0x800B0100: No signature was present in the subject.)

New news: It does install successfully on two OTHER win2k servers. They are
all SP4. Why would one say it isn't signed and the others install it without
a problem?

Since the signing requirement only covers Windows 2003, I really don't need
to spend too much time trying to figure this one out. I can just NOT sign
the win2k driver and still should pass the win2003 Certification.

Thanks.

Bob

"usfinecats" <usfin...@nospam.nospam> wrote in message
news:C7FD3B4D-E198-47DF...@microsoft.com...

Maxim S. Shatskih

unread,
Apr 24, 2005, 11:29:25 PM4/24/05
to
Why signing the PDB file? It is not needed for installation anyway. It is
needed for debugger only, and is "installed" by stupid copying to the
debugger's symbol directory.

--
Maxim Shatskih, Windows DDK MVP
StorageCraft Corporation
ma...@storagecraft.com
http://www.storagecraft.com

"Bob K" <bobk1...@newsgroup.nospam> wrote in message
news:%23GrYafT...@TK2MSFTNGP09.phx.gbl...

Bob K

unread,
Apr 25, 2005, 12:36:02 PM4/25/05
to
You're right, I had included the pdb file in the .inf so that I didn't need
an additional component in the msi file. I then found that just including it
in the inf meant that it needed to be included in the .cat. Also, copying
anything into the system dir throws up a red flag during certification that
needs to be explained. Having it as part of the inf file would make that
somewhat easier (and the pdb is in there BECAUSE of datacenter
certification, anyway).

In any case, it turned out that I was mistaken. Taking out the pdb file
didn't actually make it all work. It still complains that the file is not
signed.

One thing that I've found is that when upgrading from DIFx 1.1 to 2.0 is
that it has different requirements for the DriverPackageType field in the
[Version] section of the inf. In DIFx1.1, it can take one of:

ClassFilter
FileSystem
FileSystemFilter
FileSystemMinifilter
KernelModule
KernelService
Network
NdisImMiniport
PlugAndPlay

In 2.0, it can only have 1 of 2 values:

ClassFilter
PlugAndPlay

Unfortunately, after updating that it still doesn't take it....

Thanks,
Bob


"Maxim S. Shatskih" <ma...@storagecraft.com> wrote in message
news:uWREtcUS...@TK2MSFTNGP10.phx.gbl...

Jeff McCashland [MSFT]

unread,
Apr 26, 2005, 2:24:06 PM4/26/05
to
Bob,

I'm researching your question. I have your contact info, so I will email
or call when I have better information for you.

I will also post the general solution to this thread when I have it.

Thanks,
[MS] Jeff McCashland
je...@online.microsoft.com

This posting is provided "AS IS" with no warranties, and confers no rights.

Jeff McCashland [MSFT]

unread,
Apr 27, 2005, 12:52:38 PM4/27/05
to
Bob,

Regarding the DriverPackageType values. All of the package types supported
by DIFx 1.1 should still work in DIFx 2.0, but Microsoft recommends that
the tools only be used for PnP function drivers and class filter drivers.
I would set your DriverPackageType to FileSystemMinifilter, if that is the
type of driver you are installing.

0 new messages