Create MSI install package from a standalone command line install app for device driver RRS feed

  • Question

  • Hello:

    I have a command line installer app that uses DIFxAPI for installing our usb device driver via the INF file. I do not have the source code for this app. I like to get a poiner on creating a MSI install package that wrap the existing command line app. A link and/or sample code/project would be great.




    Thursday, May 9, 2013 6:27 PM

All replies

  • Unless you have something very strange with your device, the DIFxAPI installer is so simple, I would recommend just reproducing it.  I had from a number of years ago, an DLL for inoking a device installer program and just reviewing it, the code is larger than my DIFxAPI based install DLL's.  DIFx is one of the best things Microsoft has done, making writing an installer very simple, just develop your own DLL.

    Don Burn Windows Filesystem and Driver Consulting Website: Blog:

    • Marked as answer by Doron Holan [MSFT] Friday, May 10, 2013 3:26 AM
    • Unmarked as answer by Kiet Ly Thursday, May 16, 2013 8:30 PM
    Thursday, May 9, 2013 6:33 PM
  • So there is not a way to wrap the existing executable with MSI install package? If not, do you have any sample code/project for this ? Specifically to create the MSI install package for DIFxAPI ?


    Thursday, May 9, 2013 8:14 PM
  • I'm sure there is a way to do it, I in the past have done this for other packages using a DLL to execute the installer.  But as I said, the execute with handling of potential errors is as least as complex as the DIFxAPI.   Take a look at  this discusses how to write the code, I don't have any free samples.


    Don Burn Windows Filesystem and Driver Consulting Website: Blog:

    Thursday, May 9, 2013 8:41 PM
  • Let me try again on this topic. My question has to do with the topic "MsiDriverPackages Custom Table Schema" that described in the below link:

    It talks about the need to add one record to the MsiDriverPackages custom table for each driver package component that you add to the application database. And what each record should have (i.e. Component, Flags, Sequence). Basically, the record describe the custom action to be done for each of the driver package.

    What I need to know is how to create the record/row to this table that associate to the driver package that get built in the MSI?

    I add a row to the table with some name for the Component, but then how does it know to associate the driver package?

    Can someone help pointing to steps for this.


    Thursday, May 16, 2013 10:22 PM