Announcement

Collapse
No announcement yet.

Inf Driver File Install - SetupCopyOEMInf

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Inf Driver File Install - SetupCopyOEMInf

    Thanks to Microsoft Win 8.1 enhancements, we now have to install an INF file to update a HID driver.
    After creating it, creating an associated CAT file and signing it, it works from the desktop with right clicking and selecting Install.

    But we have two issues:
    - I would like to do this from the installer. How would I use SetupCopyOEMInf, which is recommended for this purpose here:
    http://msdn.microsoft.com/en-us/libr...(v=vs.85).aspx
    - I also have to remove any previous PID keys, since the inf install does not update configured devices in the registry. Has anybody done this? It is messy, since there are a couple of differing keys for each entry.

    Thanks,
    -- Harald

  • #2
    Originally posted by haralds View Post
    Thanks to Microsoft Win 8.1 enhancements, we now have to install an INF file to update a HID driver.
    After creating it, creating an associated CAT file and signing it, it works from the desktop with right clicking and selecting Install.

    But we have two issues:
    - I would like to do this from the installer. How would I use SetupCopyOEMInf, which is recommended for this purpose here:
    http://msdn.microsoft.com/en-us/libr...(v=vs.85).aspx
    - I also have to remove any previous PID keys, since the inf install does not update configured devices in the registry. Has anybody done this? It is messy, since there are a couple of differing keys for each entry.

    Thanks,
    -- Harald
    From the Admin Comandline, the following works:
    rundll32 syssetup,SetupInfObjectInstallAction DefaultInstall 128 .\<file>.inf

    Interestingly, it failed from a batch file for some reason. Shell.Execute does not have an install option.

    Comment


    • #3
      This may help:
      http://www.indigorose.com/forums/thr...tall-INF-files

      You may need to adapt the arguments.

      Ulrich

      Comment


      • #4
        I need a little more help. It might be, I am just dense...

        The files emwave2.inf and signed emwave2.cat are in the primer folder - so they would be in %TempLaunchFolder% at time of install.

        I have tested the following and they all work:

        1.) Directly installing from Explorer via right-click/install
        2.) Installing from command line and or a batch file with the line:
        rundll32 syssetup,SetupInfObjectInstallAction DefaultInstall 128 .\emwave2.inf
        or
        rundll32 setupapi,InstallHinfSection DefaultInstall 132 .\emwave2.inf
        Note: the relative path spec is important, not prepending ".\" will cause the command line and batch file to fail

        But the following scripts fail:

        Shell.Execute (
        SessionVar.Expand ("%SystemFolder%\\rundll32.exe"),
        "open",
        "syssetup,SetupInfObjectInstallAction DefaultInstall 128 .\emwave2.inf",
        SessionVar.Expand("%TempLaunchFolder%"),
        SW_SHOWNORMAL,
        false);

        Shell.Execute (
        SessionVar.Expand ("%SystemFolder%\\rundll32.exe"),
        "open",
        "setupapi,InstallHinfSection DefaultInstall 132 .\emwave2.inf",
        SessionVar.Expand("%TempLaunchFolder%"),
        SW_SHOWNORMAL,
        false);

        I could just run the batch file, but error trapping becomes more difficult.

        Any help would be appreciated.

        -- Harad

        Comment


        • #5
          For now the batch file with SW_HIDE set does the job, but in my book, it is an ugly solution....

          Comment

          Working...
          X