Installing a driver
How can I install a driver service using windows installer?? (MSI)
Regards,
milindsm
0 Comments
[ + ] Show comments
Answers (22)
Please log in to answer
Posted by:
jmcfadyen
14 years ago
not really.
do you understand the installation sequences ? installation sequencing is quite complex and in general the installation will run in the context of the logged on user. you can elevate CA's to run as admin which is what you need to do.
to gain access to elevation in msi you need to run the CA in deferred mode, if you need data from the msi it gets a little more complex and you need to run 2 CA's.
one in immediate to send data across to the deferred, and 1 in deferred which references that data and executes the required tasks. You should really have a commit/rollback CA for any CA in deferred which means that you should really have 4 CA's to do 1 job. you may want to do some research on immediate / deferred / commit rollback CA's etc.
do you understand the installation sequences ? installation sequencing is quite complex and in general the installation will run in the context of the logged on user. you can elevate CA's to run as admin which is what you need to do.
to gain access to elevation in msi you need to run the CA in deferred mode, if you need data from the msi it gets a little more complex and you need to run 2 CA's.
one in immediate to send data across to the deferred, and 1 in deferred which references that data and executes the required tasks. You should really have a commit/rollback CA for any CA in deferred which means that you should really have 4 CA's to do 1 job. you may want to do some research on immediate / deferred / commit rollback CA's etc.
Posted by:
AngelD
14 years ago
Posted by:
anonymous_9363
14 years ago
Posted by:
milindsm
14 years ago
I finally managed to get DIFxApp. I then followed these steps but ....
1. I added 3 files to Installer project, MyDriver.SYS, MyDriver.INF and a fake MyDriver.CAT (as it was giving me some error without Catalog file)
2. Merged DIFxApp.msm with the installer. (It gave me two conflicts but they were related to _Validation table).
3. Added component id of MyDriver.INF to MsiDriverPackages table with Flags set to 1.
4. Save & Run
Error from the log file was,
What am I doing wrong???
1. I added 3 files to Installer project, MyDriver.SYS, MyDriver.INF and a fake MyDriver.CAT (as it was giving me some error without Catalog file)
2. Merged DIFxApp.msm with the installer. (It gave me two conflicts but they were related to _Validation table).
3. Added component id of MyDriver.INF to MsiDriverPackages table with Flags set to 1.
4. Save & Run
Error from the log file was,
Action start 17:29:07: MsiProcessDrivers.
DIFXAPP: 'Component' is 'C__C6B18D429F334DA9A38BB1B1080E5027'
DIFXAPP: Component state 0x2 -> 0x3
DIFXAPP: 'ComponentId' is {F0EDEBFC-6AF5-B110-582D-F09254D9FF44}
DIFXAPP: 'Flags' is 1
DIFXAPP: component path is C:\Program Files\MyOrg\MyDriver\
Action 17:29:07: MsiRollbackInstall.
Action start 17:29:07: MsiRollbackInstall.
DIFXAPP: RollbackInstall
DIFXAPP: ERROR 0x57 reading the 'CustomActionData' property.
DIFXAPP: Rollback failed with error 0x57
Action ended 17:29:08: MsiRollbackInstall. Return value 3.
DIFXAPP: ERROR 0x643 creating MsiRollbackInstall custom action for C__C6B18D429F334DA9A38BB1B1080E5027
Action ended 17:29:08: MsiProcessDrivers. Return value 3.
Action ended 17:29:08: INSTALL. Return value 3.
What am I doing wrong???
Posted by:
Inabus
14 years ago
Posted by:
milindsm
14 years ago
I tried with DPInst.exe
Is fake CAT file causing a problem??? I should I create a catalog file???
INFO: Found driver package: 'F:\Assignments\ScriptTest\Drvr\MyDriver.INF'.
INFO: ENTER: DriverPackagePreinstallW
ERROR: Failed to calculate strong name from 'f:\assignments\scripttest\drvr\MyDriver.CAT'. Check if catalog is valid and if file is in the same directory as the INF. (Error code 0x80092009: Cannot find the requested object.)
INFO: RETURN: DriverPackagePreinstallW (0xE0000304)
INFO: Returning with code 0x80010000
Is fake CAT file causing a problem??? I should I create a catalog file???
Posted by:
milindsm
14 years ago
Posted by:
jaybee96
14 years ago
Posted by:
anonymous_9363
14 years ago
Posted by:
PackageExpert
14 years ago
ORIGINAL: milindsm
Is fake CAT file causing a problem??? I should I create a catalog file???
indeed....you can't be any smarter to fake a driver installation my friend :) create a catalog file a.k.a .cat file from Inf2cat.exe tool. Search AppDeploy for the followings and you will get all you need to get your driver installed..
driver signing;driver installation;makecert;inf2cat;pnp driver install
There is more than enough information here to get you rolling... Good Luck..
Posted by:
milindsm
14 years ago
Posted by:
milindsm
14 years ago
Posted by:
jmcfadyen
14 years ago
Posted by:
milindsm
14 years ago
Posted by:
milindsm
14 years ago
Posted by:
milindsm
14 years ago
Posted by:
milindsm
14 years ago
Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.
so that the conversation will remain readable.