Hi,
I am using Wise for Windows Installer for creating an msi package that will
install 32-bit non-device minifilter drivers plus the end user app. The
driver package consists of three .SYS files, one INF and one CAT file. All
of the drivers will be signed with the Authenticode (not WHQL). I am using
the latest version of DIFxApp.msm. I have configured my test system (XP) to
run in a debug mode, so I can avoid the problems related to signature
validation. So far I have been unable to successfully install using the DIFx
tools. I have examined the INF using chkinf.bat and fixed all of the errors.
This INF works fine when I use right-click menu option “Install”. The
Setupapi.log shows only warnings related to drivers’ signatures, but
everything else gets installed. When I use the same INF with the msi and
DIFx, the install fails with the msg in the log: “Could not get services
associated with driver package”. there is no problem with starting the
services when I use right-click menu option “Install”.
-
Can I use one INF file for all the three signed drivers? “The
Requirements for Driver Packages That Are Used with the DIFx Tools” MS doc
reads: “Each signed driver package INF must have its own catalog file, which
contains the signature for the driver package. The DIFx tools do not support
catalog files that contain signatures for more one driver package”. Does it
mean that I need to have three separate INFs and corresponding catalog
files? That would be strange since a single INF works with the setupapi.
-
DDK docs state explicitly that CatalogFile entry in the Version section
of the INF file is “for signed antivirus minifilters, this entry contains
the name of a WHQL-supplied catalog file. All other minifilters should leave
this entry blank. For more information, see the description of the
CatalogFile entry in INF Version Section”. When I use DIFxApp.msm, the
install will fail if there is no CatalogFile entry and there is nothing in
the documentation that would suggest this entry is optional. So, I have
assumed that when using DIFx tools I must use catalog files even when
installing minifilter drivers. Is that correct?
-
The DriverPackageType in the [Version] section is listed as
“FileSystemMinifilter”. The latest version of the DIFx tools lists only two
types: ClassFilter and PlugAndPlay. Should I change that entry to
ClassFilter or is it backwards compatible. I recall seeing a post somewhere
stating that using FileSystemMinifilter is OK.
-
There was a post on the OSR forum in which Neal Christiansen said: “The
issue is if you talk with the DIFx guys they will tell you that non-device
drivers are not supported with DIFx. If it works be happy and continue to
use it but if you have issues they won’t do anything about it right now.
Hopefully we will get this resolved (and supported) soon”. Does this
statement apply to Vista only or DIFx tools in general? What are my options
in a situation where I need to use Windows Installer technology to install
drivers with the application. My understanding is that there is no other
other built-in support for installing drivers using Windows Installer than
DIFx. If DIFx does not support non-device drivers it leaves me with no
alternative. What am I supposed to do to install in a supported way
non-device drivers using Windows Installer technology?
I would appreciate if someone could explain what is the right course of
action in my case and how to make it work.
Thanks,
Jack
I have written custom installation programs.
My understanding is that there is no other other built-in support for installing drivers using Windows Installer than DIFx. If DIFx does not support non-device drivers it leaves me with no alternative. What am I supposed to do to install in a supported way non-device drivers using Windows Installer technology?
You can write your own installation exe. Look at the devcon sample in the Windows DDK under the setup subdir. You can install drivers with this application.
-William Michael Jones “Mike”
“Jack Jasinski” wrote in message news:xxxxx@ntdev…
Hi,
I am using Wise for Windows Installer for creating an msi package that will install 32-bit non-device minifilter drivers plus the end user app. The driver package consists of three .SYS files, one INF and one CAT file. All of the drivers will be signed with the Authenticode (not WHQL). I am using the latest version of DIFxApp.msm. I have configured my test system (XP) to run in a debug mode, so I can avoid the problems related to signature validation. So far I have been unable to successfully install using the DIFx tools. I have examined the INF using chkinf.bat and fixed all of the errors. This INF works fine when I use right-click menu option “Install”. The Setupapi.log shows only warnings related to drivers’ signatures, but everything else gets installed. When I use the same INF with the msi and DIFx, the install fails with the msg in the log: “Could not get services associated with driver package”. there is no problem with starting the services when I use right-click menu option “Install”.
1. Can I use one INF file for all the three signed drivers? “The Requirements for Driver Packages That Are Used with the DIFx Tools” MS doc reads: “Each signed driver package INF must have its own catalog file, which contains the signature for the driver package. The DIFx tools do not support catalog files that contain signatures for more one driver package”. Does it mean that I need to have three separate INFs and corresponding catalog files? That would be strange since a single INF works with the setupapi.
2. DDK docs state explicitly that CatalogFile entry in the Version section of the INF file is “for signed antivirus minifilters, this entry contains the name of a WHQL-supplied catalog file. All other minifilters should leave this entry blank. For more information, see the description of the CatalogFile entry in INF Version Section”. When I use DIFxApp.msm, the install will fail if there is no CatalogFile entry and there is nothing in the documentation that would suggest this entry is optional. So, I have assumed that when using DIFx tools I must use catalog files even when installing minifilter drivers. Is that correct?
3. The DriverPackageType in the [Version] section is listed as “FileSystemMinifilter”. The latest version of the DIFx tools lists only two types: ClassFilter and PlugAndPlay. Should I change that entry to ClassFilter or is it backwards compatible. I recall seeing a post somewhere stating that using FileSystemMinifilter is OK.
4. There was a post on the OSR forum in which Neal Christiansen said: “The issue is if you talk with the DIFx guys they will tell you that non-device drivers are not supported with DIFx. If it works be happy and continue to use it but if you have issues they won’t do anything about it right now. Hopefully we will get this resolved (and supported) soon”. Does this statement apply to Vista only or DIFx tools in general? What are my options in a situation where I need to use Windows Installer technology to install drivers with the application. My understanding is that there is no other other built-in support for installing drivers using Windows Installer than DIFx. If DIFx does not support non-device drivers it leaves me with no alternative. What am I supposed to do to install in a supported way non-device drivers using Windows Installer technology?
I would appreciate if someone could explain what is the right course of action in my case and how to make it work.
Thanks,
Jack