Hi,

My plan is to develope an MSI driver package including an INF-file, a SYS-file, a BIN-file and some DLLs. Since I think about using DPInst for realisation I first need a signed CAT-file. The CAT-file is supposed to be created by INF2CAT, which I run using the command:

Inf2Cat /driver:c\driverfolder /os:XP_x86

I corrected some syntax errors, which were indicated, so the parsing works fine:

........................................
Signibility test complete.

Error:
None

Warnings:
None


Subsequently I get the following error message though:

Unable to find an entry point named 'CryptSIPRetrieveSubjectGuidForCatalogFile' in DLL 'crypt32.dll'.
Signibility test failed.


The result is an empty catalog file.

So, I checked my system32 folder for that dll and found it. Furthermore I had a look if the dll has the requested function entry point using the tool DEPENDENCY WALKER and found it. Finally I downloaded the latest version of that dll and replaced the one on my system. But I had no success.

Does anyone know what to do now? Or has a proposition how I could build my driver package alternatively. Anyway, I didn't think about a proper way to sign the CAT-file yet, since I first have to solve the mentioned problem.

I also post my INF-file (in which I had to change some file names and IDs, but that doesn't mean to be a problem I guess), just in case that there's the rub.

Thanks a lot in advance.


sample.inf:

[Version]
Signature=$CHICAGO$
Class=Media
ClassGUID={4d36e96c-e325-11ce-bfc1-08002be10318}
Provider=%MFGNAME%
CatalogFile.ntx86=sample_ntx86.cat
DriverVer=01/11/2007, 5.00.2136.1

[Manufacturer]
%MFGNAME%=DeviceList

[DestinationDirs]
DefaultDestDir=11
DriverCopyFiles=10,System32\Drivers
DllCopyFiles=11 ; System Dir


[SourceDisksFiles]
drv02.sys=1
expl1.dll=1
expl2.dll=1
expl3.dll=1
ex_conf.dat=1
wever.bin=1

[SourceDisksNames]
1=%INSTDISK%,,,.\.

[DeviceList]
%DESCRIPTION_GRABBER% = DriverInstall,PCI\VEN_1111&DEV_0002
%DESCRIPTION_GRABBER% = DriverInstall,PCI\VEN_2222&DEV_0002
%DESCRIPTION_GRABBER% = DriverInstall,PCI\VEN_3333&DEV_0001

;------------------------------------------------------------------------------
; Windows 2000 Sections
;------------------------------------------------------------------------------


[DriverInstall.NT]
CopyFiles=DriverCopyFiles, DllCopyFiles

[DllCopyFiles]
expl1.dll,,,2
expl2.dll,,,2
expl3.dll,,,2
ex_conf.dat,,,2
wever.bin,,,2

[DriverCopyFiles]
drv02.sys,,,2

[DriverInstall.NT.Services]
AddService=DRV02,2,DriverService

[DriverService]
ServiceType=1
StartType=3
ErrorControl=1
ServiceBinary=%10%\system32\drivers\drv02.sys

[DriverInstall.nt.hw]
AddReg=DriverHwAddReg

[DriverHwAddReg]
HKR,,FriendlyName,,%FRIENDLYNAME%
HKLM,%SERVICE_PARAMETERS%,DebugLevel,0x00010001,0
HKLM,%SERVICE_PARAMETERS%,EnableIRQs,0x00010001,1
HKLM,%SERVICE_PARAMETERS%,EnableIRQsLate,0x00010001,1

;------------------------------------------------------------------------------
; Windows 98 Sections
;------------------------------------------------------------------------------

[DriverInstall]
AddReg=DriverAddReg
CopyFiles=DriverCopyFiles, DllCopyFiles

; TODO Add a LogConfig command and section if this is a legacy device

[DriverAddReg]
HKR,,DevLoader,,*ntkern
HKR,,NTMPDriver,,drv02.sys
HKR,Parameters,DebugLevel,0x00010001,0
HKR,Parameters,EnableIRQsLate,0x00010001,1
HKR,Parameters,EnableIRQs,0x00010001,1


[DriverInstall.HW]
AddReg=DriverHwAddReg

;------------------------------------------------------------------------------
; String Definitions
;------------------------------------------------------------------------------

[Strings]
SERVICE_PARAMETERS="System\CurrentControlSet\Services\drv02\Parameters"
MFGNAME="MyCompany"
INSTDISK="MyCompany Installation Disc"
DESCRIPTION_GRABBER="MyCompany FG01 Frame Grabber"
FRIENDLYNAME="FG01 PCI Device"
0 Comments   [ + ] Show Comments

Comments

Please log in to comment

Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.

Answers

0
Could you post where to download the exact location for the driver?
As you have modified the .INF file it's kinda hard to tell if it is due to your changes or the original settings.
Answered 01/16/2007 by: AngelD
Red Belt

Please log in to comment
0
I just changed some file names and descriptions, I didn't change any pathes.
But in fact, the files are on a CD-ROM. I just noticed I might need a tag file specified in the [SourceDisksNames] section, something like

[SourceDisksNames]
1=%INSTDISK%,file.tag,,.\.


Can you confirm that?
Unfortunately I couldn't find out what exactly is a .TAG file and what has to be included.
The only thing I read is, it can be an empty file with a unique name. So I created one named uniqueX.tag, placed it inside the installation folder and modified the .INF file:

[SourceDisksNames]
1=%INSTDISK%,uniqueX.tag,,.\.


but that didn't work neither.
Which next steps are possible to perform?
Answered 01/17/2007 by: germanguy
Senior Yellow Belt

Please log in to comment
0
Why did you change anything in the .INF file if you had the original from the vendor?
Answered 01/17/2007 by: AngelD
Red Belt

Please log in to comment
0
I'm not quiet sure if it is legal to just post it in the internet. So I changed the names, but that shouldn't be a problem, should it?
Answered 01/17/2007 by: germanguy
Senior Yellow Belt

Please log in to comment
0
Don't think it's illegal to post the content of an .INI file if it's a driver that anyone could have downloaded...maybe I don't know ;)
It's up to you but if you have a location from the vendor site where anyone could download the driver that may help.
Answered 01/17/2007 by: AngelD
Red Belt

Please log in to comment
0
You can't download it. It's located on a CD. If it's ok for you, I'll send the files to your eMail and you can have a look on it.
Since I don't know your eMail address you might just send me a quick mail to mine (which is accessable on my profile) and I'll answer you with the files attached.

Cheers
Answered 01/18/2007 by: germanguy
Senior Yellow Belt

Please log in to comment
0
Hi,

I mailed to the company and the said that's ok. so, here's the link to the zipped driver:

http://download.yousendit.com/F78A00DA76320C50
Answered 01/24/2007 by: germanguy
Senior Yellow Belt

Please log in to comment
0
So I took a quick look and tested to verify the XRD-FGmod.inf file and everything passed on my side.
command:
INF2CAT /driver:C:\driverfolder /os:XP_X86 /nocat /verbose

Try to change
CatalogFile.ntx86=PKI_FG_ntx86.cat
to
CatalogFile=XRD-FGmod.cat

Generate the XRD-FGmod.cat file
command:
INF2CAT /driver:C:\driverfolder /os:XP_X86 /verbose

When the .CAT file has been created you will need to sign it with a valid certificate.
Answered 01/24/2007 by: AngelD
Red Belt

Please log in to comment
0
I changed the intended line and the .INF file seems to be ok:
INF2CAT /driver:C:\driverfolder /os:XP_X86 /nocat /verbose

But when I try to create the .CAT file I'll get the Error Message, I mentioned in the beginning, and the .CAT file is invalid. There must be something wrong with the environment, I guess.

You have been successful so far? You have a working .CAT file?
Answered 01/24/2007 by: germanguy
Senior Yellow Belt

Please log in to comment
0
Yes, it worked for me as well now. I just processed on a different machine. There seems to be a problem with Crytography on the original system.

So, what's the easiest/best way to sign my freschly created .CAT ??

Thx a lot, AngelD
Answered 01/25/2007 by: germanguy
Senior Yellow Belt

Please log in to comment
0
Have a look at http://itninja.com/question/how-do-you-roll-out-new-machines?0873
It explains how to create an authenticode certificate if you do not already have one in your company you could use and to sign the .CAT file with the certificate.
Answered 01/25/2007 by: AngelD
Red Belt

Please log in to comment
0
Hi AngelD,

just to inform: It took a while, but finally I finished my driver app.

Thank you very much, you have been a great help for me!
Answered 03/27/2007 by: germanguy
Senior Yellow Belt

Please log in to comment
0
Great to see that you finally got it working.

Cheers!
Answered 03/27/2007 by: AngelD
Red Belt

Please log in to comment
Answer this question or Comment on this question for clarity