Question

I have created a basic MSI in InstallShield 2012. Currently, the MSI only installs the actual software itself.

I would like to be able to install the drivers for the Hardware as well. I have seen other install packages do this, I just do not know if it is possible with my current setup.

Any help on this topic would be greatly appreciated.

Was it helpful?

Solution

You have to options:

Chain-

Use a Suite Installer or Setup Prerequisites to "chain" the third party to your MSI. You'll have to figure out detection logic to know the package is applicable and needed so InstallShield can show the item or hide the item. You'll also need to know what command line to pass to the installer to invoke it silently.

Integrate-

Decompose the contents and actions of the installer and author it into your own installer.

OTHER TIPS

FTDI now distribute a driver installer (see http://www.ftdichip.com/Drivers/D2XX.htm). What we do is to embed that in our installer, and then run it automatically at installation time.

I don't know the exact steps in InstallShield. In InstallAware we add the CDM20830_Setup.exe to the project Support Files, then call Run Program $SUPPORTDIR$\CDM20830_Setup.exe .

One thing I haven't worked out how to do is make this run silently - it pops up the FTDI extraction/install wizard as it goes.

Hope this helps.

Ian

Information on how to create a DPInst.xml file, with examples are at http://www.ftdichip.com/Support/Documents/AppNotes/AN232R-03_DriverPreInstallation.pdf. DPInst automatically looks for a DPInst.xml file in the folder it's run from. Use dpinst-amd64.exe for 64-bit and dpinst-x86.exe for 32-bit.

Thank you for all input.

I was able to install my Drivers by through the utilization of dpinst.exe, which is included in the Microsoft WDK.

I created a customized XML for this executable. Then, I created a Custom Action to run dpinst.exe at the SetupProgress time.

Instructions for Creating a DPinst Installation can be found here: https://msdn.microsoft.com/en-us/library/windows/hardware/ff540184%28v=vs.85%29.aspx

Now, additionally from what were my needs, here is the XML file(with company information removed):

<?xml version="1.0" ?>
<dpinst>
<!-- version 2.0 created by Robert Milicia, Br Te, Inc. on 5/21/2014
     The following area will not create an Add or remove programs section.  This
     will also force the driver to always be installed, as well as should work for
     all languages.-->
    <suppressAddRemovePrograms/>
    <enableNotListedLanguages/>
    <forceIfDriverIsNotBetter/>    

<!-- The following search and subDirectory elements direct
     DPInst to search all subdirectories (under the DPInst working directory) to locate driver
     packages. -->
    <search>
        <subDirectory>*</subDirectory>
    </search>

<!-- The following language element localizes its child elements
     for the English (Standard) language. The child elements
     customize the text that appears on the DPInst wizard pages. -->
    <language code="0x0409">
        <dpinstTitle>Title Menu Label</dpinstTitle>
        <welcomeTitle>Welcome to the Hardware Device Installer</welcomeTitle>
        <welcomeIntro>This wizard will walk you through updating the drivers for your device.</welcomeIntro>
        <installHeaderTitle>Installing the software for your device...</installHeaderTitle>
        <finishTitle>Congratulations! You finished installing the Hardware drivers.</finishTitle>
        <finishText>To complete the installation, please plug in your Hardware, to assign it a COM Port</finishText>
    </language>

<!-- The following two elements customize, but do not localize,
     the icon and bitmaps that appear on the DPInst wizard pages. -->
    <headerPath>Data\BannerSplash.bmp</headerPath>
    <watermarkPath>Data\BMrSplash.bmp</watermarkPath>

</dpinst>
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top