none
Why can't install wdf driver at WinXP??? RRS feed

  • Question

  • Dear Sir:

    I use sample code:hidusbfx2 from DDK-7600.16385.1 to build

    In the folder, I put 2 sys files, 1 inf file and WdfCoInstaller01009.dll

    , to install at WinXP-SP3

    But after copying files, it will happen error when procedure of installing

    I tried another sample code:moufiltr, it is also the same question

    below is partial context of hidusbfx2.inf

    Do you help me solve this condition?

    Thank you!

    BR,

    Alan

    //----------------------------------------------------------------------------------------------------------------------//

    [SourceDisksFiles]
    eTouchHidUsb.sys = 99
    eTouchKmdf.sys = 99

    [SourceDisksNames]
    99 = %DISK_NAME%,,,""

    [DestinationDirs]
    CopySystemSysFiles = 12     
    CopyFunctionDriver = 12     
    CopyFilterDriver = 12     
    CopyFilesDLL = 11

    [Manufacturer]
    %VENDOR%=ETouchMfg, NTx86

    [EToucMfg.NTx86]
    %eTouchHidUsb%    = eTouchHidUsb.Inst, USB\VID_xxxx&PID_yyyy
    %customCollection%    = customCollection.Inst, HID_DEVICE_UP:FF00_U:0001

    [eTouchHidUsb.Inst.NT]
    CopyFiles = CopySystemSysFiles, CopyFunctionDriver, CopyFilterDriver, CopyFilesDLL

    [eTouchHidUsb.Inst.NT.HW]
    AddReg = eTouchHidUsb_Parameters.AddReg

    [eTouchHidUsb.Inst.NT.Services]
    AddService = eTouchKmdf,,eTouchKmdf_Service_Inst,
    AddService = eTouchHidUsb,0x00000002, eTouchHidUsb_Service_Inst

    [CopyFunctionDriver]
    eTouchKmdf.sys

    [eTouchHidUsb_Parameters.AddReg]
    HKR,,"UpperFilters",0x00010000,"eTouchKmdf"

    [eTouchKmdf_Service_Inst]
    DisplayName    = %eTouchKmdf.SVCDESC%
    ServiceType    = 1               ; SERVICE_KERNEL_DRIVER
    StartType      = 3               ; SERVICE_DEMAND_START
    ErrorControl   = 1               ; SERVICE_ERROR_NORMAL
    ServiceBinary  = %12%\eTouchKmdf.sys
    LoadOrderGroup = PNP Filter

    [CopySystemSysFiles]
    HidClass.sys,,,0x00000010    ;COPYFLG_NO_OVERWRITE (for win2k)
    HidParse.sys,,,0x00000010    ;COPYFLG_NO_OVERWRITE (for win2k)

    [CopyFunctionDriver]
    eTouchHidUsb.sys

    [CopyFilesDLL]
    Hid.dll,,,0x00000010    ;COPYFLG_NO_OVERWRITE (for win2k)

    [eTouchHidUsb_Service_Inst]
    DisplayName    = %eTouchHidUsb%
    ServiceType    = %SERVICE_KERNEL_DRIVER%
    StartType      = %SERVICE_DEMAND_START%
    ErrorControl   = %SERVICE_ERROR_IGNORE%
    ServiceBinary  = %12%\eTouchHidUsb.sys

    [customCollection.Inst.NT]
    ; NULL section

    [customCollection.Inst.NT.HW]
    AddReg = customCollection.Inst.AddReg.NT.HW

    [customCollection.Inst.AddReg.NT.HW]
    HKR,,"SelectiveSuspendEnabled",0x00000001,0x1

    [customCollection.Inst.NT.Services]
    AddService = ,0x00000002,   ; NULL Service

    [DestinationDirs]
    eTouchHidUsb.Inst_CoInstaller_CopyFiles = 11

    [eTouchHidUsb.Inst.NT.CoInstallers]
    AddReg=eTouchHidUsb.Inst_CoInstaller_AddReg
    CopyFiles=eTouchHidUsb.Inst_CoInstaller_CopyFiles

    [eTouchHidUsb.Inst_CoInstaller_AddReg]
    HKR,,CoInstallers32,0x00010000, "WdfCoInstaller01009.dll,WdfCoInstaller"

    [eTouchHidUsb.Inst_CoInstaller_CopyFiles]
    WdfCoInstaller01009.dll,,,0x00000010    ;COPYFLG_NO_OVERWRITE (for win2k)

    [SourceDisksFiles]
    WdfCoInstaller01009.dll=99 ; make sure the number matches with SourceDisksNames

    [eTouchHidUsb.Inst.NT.Wdf]
    KmdfService = eTouchHidUsb, eTouchHidUsb_wdfsect
    [eTouchHidUsb_wdfsect]
    KmdfLibraryVersion = 1.9


    • Edited by alan.emc Tuesday, August 18, 2015 3:41 AM
    Tuesday, August 18, 2015 3:39 AM

Answers

  • Hi, Sirs:

    I fixed this issue by replacing check version with release version for WdfConinstallerxxx.dll

    I built check build version, so I put check version of WdfConinstallerxxx.dll with sys

    files and inf file, but it failed to install.

    But change to free version of of WdfConinstallerxxx.dll, it can install successfully.

    Thanks

    BR,

    Alan

    Wednesday, August 19, 2015 3:58 AM

All replies

  • What toolset and DDK did you use to build your .sys file?

    Are you sure the .sys file itself is marked as compatible with Windows XP SP3? Use "DUMPBIN /headers" and verify the "subsystem version" setting.

    Tuesday, August 18, 2015 3:45 AM
  • Dear Sir:

    I used DDK-7600.16385.1(Build environments select Windows XP) to build

    I tried to use dumpbin.exe to output sys information, and below is context

    The "subsystem version" is 5.01, is it correct for WinXP-SP3?

    I tried to use sample code:moufiltr from DDK-7600.16385.1 to build, but fail to install

    I changed to sampe code:moufiltr from DDK-6001.18002 to build, and install successfully

    I knew both are different that 6001 is wdm and 7600 is wdf

    Any suggestion to help me?

    Thank you!

    BR,

    Alan

    //---------------------------------------------------------------------------------------------------------//

    Dump of file eTouchHidUsb.sys

    PE signature found

    File Type: EXECUTABLE IMAGE

    FILE HEADER VALUES
                 14C machine (x86)
                   7 number of sections
            55D2AC4F time date stamp Tue Aug 18 11:53:51 2015
                   0 file pointer to symbol table
                   0 number of symbols
                  E0 size of optional header
                 102 characteristics
                       Executable
                       32 bit word machine

    OPTIONAL HEADER VALUES
                 10B magic # (PE32)
                9.00 linker version
                4480 size of code
                1300 size of initialized data
                   0 size of uninitialized data
                1E2A entry point (00011E2A) _FxDriverEntry@8
                 480 base of code
                3680 base of data
               10000 image base (00010000 to 00015BFF)
                  80 section alignment
                  80 file alignment
                6.01 operating system version
                6.01 image version
                5.01 subsystem version
                   0 Win32 version
                5C00 size of image
                 480 size of headers
                70F2 checksum
                   1 subsystem (Native)
                 400 DLL characteristics
                       No structured exception handler
               40000 size of stack reserve
                1000 size of stack commit
              100000 size of heap reserve
                1000 size of heap commit
                   0 loader flags
                  10 number of directories
                   0 [       0] RVA [size] of Export Directory
                52CC [      50] RVA [size] of Import Directory
                5480 [     3A0] RVA [size] of Resource Directory
                   0 [       0] RVA [size] of Exception Directory
                   0 [       0] RVA [size] of Certificates Directory
                5880 [     2C4] RVA [size] of Base Relocation Directory
                36C0 [      1C] RVA [size] of Debug Directory
                   0 [       0] RVA [size] of Architecture Directory
                   0 [       0] RVA [size] of Global Pointer Directory
                   0 [       0] RVA [size] of Thread Storage Directory
                   0 [       0] RVA [size] of Load Configuration Directory
                   0 [       0] RVA [size] of Bound Import Directory
                3680 [      40] RVA [size] of Import Address Table Directory
                   0 [       0] RVA [size] of Delay Import Directory
                   0 [       0] RVA [size] of COM Descriptor Directory
                   0 [       0] RVA [size] of Reserved Directory

    Tuesday, August 18, 2015 7:02 AM
  • Is your WinXP at least SP2? or, better, SP3?

    When you say "there's some error", be sure to post the log.

    -- pa


    • Edited by Pavel A Tuesday, August 18, 2015 8:42 AM
    Tuesday, August 18, 2015 8:40 AM
  • Hi, Sirs:

    I fixed this issue by replacing check version with release version for WdfConinstallerxxx.dll

    I built check build version, so I put check version of WdfConinstallerxxx.dll with sys

    files and inf file, but it failed to install.

    But change to free version of of WdfConinstallerxxx.dll, it can install successfully.

    Thanks

    BR,

    Alan

    Wednesday, August 19, 2015 3:58 AM