none
Certified driver won't install properly RRS feed

  • Question

  • Hi,

    We have been using a driver for a long time, but due to a customer request we certified the driver and now we are experiencing issues when installing our USB driver on a Windows installation where no serial USB driver has been installed before. Our driver is based on usbser.sys so we believe that if a driver using usbser.sys has been installed previous to our driver then our driver will install successfully as well. If no other driver utilizing usbser.sys has been installed then our driver installation fails and is complaining that some parts of the .inf file is not valid.

    We recently modified our .inf file when testing our driver for Windows certification and then removed some sections referring to usbser.sys according to the recommendation from the test house we used to do the testing (MCCI). MCCI claimed that they recommended these changes to pass the tests in Windows HLK.

    We are now wondering if someone knows how to compose a .inf file to enabled successful installation independent of the status of the Windows installation and still pass the Windows HLK tests?

    Kind regards

    Kai

    Certified .inf file

    ; Windows 2000, XP & Vista setup File for Remote PD

    ; Copyright (c) 2000 Microsoft Corporation
    ; Copyright (c) 2012 ASSA ABLOY AB

    [Version]
    Signature="$Windows NT$"
    Class=Ports
    ClassGuid={4D36E978-E325-11CE-BFC1-08002BE10318}

    Provider=%AAAB%
    DriverVer=02/09/2016,5.0.2153.2
    CatalogFile=RemotePD.cat

    ;----------------------------------------------------------
    ; Targets
    ;----------------------------------------------------------
    [Manufacturer]
    %AAAB%=AAAB, NTamd64

    [AAAB]
    %AAAB_CDC%=Reader, USB\VID_03EB&PID_2307

    [AAAB.NTamd64]
    %AAAB_CDC%=DriverInstall, USB\VID_03EB&PID_2307

    [SourceDisksFiles]

    [SourceDisksNames]

    ;----------------------------------------------------------
    ; Windows 2K, XP, and Vista32
    ;----------------------------------------------------------
    [Reader_Install.NTx86]


    [DestinationDirs]
    DefaultDestDir=12
    Reader.NT.Copy=12

    [Reader.NT]
    include=mdmcpq.inf
    CopyFiles=Reader.NT.Copy
    AddReg=Reader.NT.AddReg

    [Reader.NT.Copy]

    [Reader.NT.AddReg]
    HKR,,DevLoader,,*ntkern
    HKR,,NTMPDriver,,usbser.sys
    HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider"

    [Reader.NT.Services]
    AddService = usbser, 0x00000002, Service_Inst

    [Service_Inst]
    DisplayName = %Serial.SvcDesc%
    ServiceType = 1 ; SERVICE_KERNEL_DRIVER
    StartType = 3 ; SERVICE_DEMAND_START
    ErrorControl = 1 ; SERVICE_ERROR_NORMAL
    ServiceBinary = %12%\usbser.sys
    LoadOrderGroup = Base


    ;----------------------------------------------------------
    ; Vista64
    ;----------------------------------------------------------

    [DriverInstall.NTamd64]
    include=mdmcpq.inf
    CopyFiles=DriverCopyFiles.NTamd64
    AddReg=DriverInstall.NTamd64.AddReg

    [DriverCopyFiles.NTamd64]

    [DriverInstall.NTamd64.AddReg]
    HKR,,DevLoader,,*ntkern
    HKR,,NTMPDriver,,usbser.sys
    HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider"

    [DriverInstall.NTamd64.Services]
    AddService=usbser, 0x00000002, DriverService.NTamd64

    [DriverService.NTamd64]
    DisplayName=%Serial.SvcDesc%
    ServiceType=1
    StartType=3
    ErrorControl=1
    ServiceBinary=%12%\usbser.sys

    ;----------------------------------------------------------
    ; String
    ;----------------------------------------------------------

    [Strings]
    AAAB = "ASSA ABLOY AB"
    AAAB_CDC = "RemotePD USB"
    Serial.SvcDesc = "USB Serial emulation driver"

    Tuesday, May 30, 2017 7:51 AM

All replies

  • What OS version is the install failing on? What does setupapi.dev.log say?

    d -- This posting is provided "AS IS" with no warranties, and confers no rights.

    Tuesday, May 30, 2017 12:40 PM
  • Hi,

    It looks in setupapi.dev.log as if Windows can't find the usbser.sys driver...

    !!!  dvi:                               Add Service: Binary 'C:\Windows\system32\DRIVERS\usbser.sys' for service 'usbser' is not present.

    !!!  inf:                          {Install Inf Section [DriverInstall.NTAMD64.Services] exit(0xe0000217)}

    !!!  dvi:                          Error while installing services.                                            

    !!!  dvi:                          Cleaning up failed installation                                             

         dvi:                     {Install DEVICE exit (0xe0000217)}                                           

    !!!  dvi:                     Cleaning up failed installation (e0000217)                          

    !!!  dvi:                Class installer: failed(0xe0000217)!                                            

         dvi:           {DIF_INSTALLDEVICE - exit(0xe0000217)} 12:40:18.736

    !!!  ndv:           Error(e0000217) installing device!                                                  

         ndv:           Device install status=0xe0000217                                                     

         ndv:           Performing device install final cleanup...                                      

    !    ndv:           Queueing up error report since device installation failed...

    Thursday, June 1, 2017 7:21 AM
  • Your INF does not attempt to install or copy  usbser.sys.  The copyfiles sections are empty. How do you think the service install would succeed without the binary?

    -- pa

    Thursday, June 1, 2017 8:23 AM
  • Thanks for highlighting this. As you might imagine we are no windows hackers, and since we changed the driver in order to pass the certification, we thought that the tests at least would cover the installation step, but obviously we were wrong.

    Thanks again, now I Think our driver is fine.

    Monday, June 5, 2017 8:24 AM