The driver I am attempting to install is a Kernel Mini-Filter driver for Windows 7x64. The machine I am testing the installer on is in test mode and the driver files and .cat file are all signed with a certificate I made. I followed the instructions HERE and I am still unable to get the driver to install. I made sure to add DriverPackageType = FileSystemMinifilter
to the [version]
section of the .inf file.
Here is an excerpt from my WiX installer xml:
<Directory Id="Driver" Name="Driver">
<Component Id="MY-DRIVER-NAME" Guid="MY-GUID">
<File
Id="DRIVER_FILE1_SYS"
Name="DriverFile1.sys"
DiskId="1"
Source="path_to_sys_file"
Vital="yes"
System="yes"
ReadOnly="yes"
KeyPath="yes"/>
<File
Id="DRIVER_FILE2_SYS"
Name="DriverFile2.sys"
DiskId="1"
Source="path_to_sys_file"
Vital="yes"
System="yes"
ReadOnly="yes"
KeyPath="yes"/>
<File
Id="DRIVER_FILE3_SYS"
Name="DriverFile3.sys"
DiskId="1"
Source="path_to_sys_file"
Vital="yes"
System="yes"
ReadOnly="yes"
KeyPath="yes"/>
<File
Id="DRIVER_FILE4_SYS"
Name="DriverFile4.sys"
DiskId="1"
Source="path_to_sys_file"
Vital="yes"
System="yes"
ReadOnly="yes"
KeyPath="yes"/>
<File
Id="DRIVER_FILE_INF"
Name="DriverFile.inf"
DiskId="1"
Source="path_to_inf_file"
Vital="yes"
System="yes"
ReadOnly="yes"/>
<File
Id="DRIVER_FILE_CAT"
Name="DriverFile.cat"
DiskId="1"
Source="path_to_cat_file"
Vital="yes"
System="yes"
ReadOnly="yes"/>
<difx:Driver Legacy="yes"/>
</Component><!--LEGDriver-->
The "Id", "Name", and "Source" paths have been changed (I'm not actually using the values shown above it is just an example). I have no problem building the installer. When I run it with msiexec /i MyMsi.msi /l*v install.log
I see the error DIFXAPP: ERROR: Could not get services associated with driver package
Then it tries to undo the changes and runs into a few more errors:
ERROR: Unable to revert to a previous driver store for service ''.
ERROR: Unable to open service '' to delete it because of error 0x7B
The .inf file has no problem installing with the command:
RUNDLL32.EXE SETUPAPI.DLL,InstallHinfSection DefaultInstall 132 path-to-inf\infname.inf
It also successfully installs via 'right-click install'.
Adding the 'RUNDLL32.EXE' command above as a custom action ExeCommand to my WiX installer instead of using DifxApp works when installing the .msi file on the machine manually, however, when deployed via GPO from an Active Directory server (Per-Computer GPO), the installation does not complete. (Everything except the INF install completes).