none
Small blue question mark over white circle on an icon picked up by device manager in windows 7 RRS feed

  • Question

  • I have a resource dll . It consists of an icon that I want to use for my windows driver.First I compiled the dll  for windows XP. I tried to install the driver in XP. The driver installed successfully and the icon is picked up by the device manager.Then I compiled the dll for Windows 7 (64 bit).I tried to install driver in windows 7.The driver was installed successfully and the device name is listed in the device manager, but there is a small blue question mark over white circle on the  icon picked up by device manager . When I took the properties of the  device in the device manager, it shows that the device is working properly.The problem was the blue question mark over white circle on the  icon .

    My INF file settings is as shown below:

    [ClassInstall32.NTamd64]
    Addreg = HwClass_NTamd64

    [HwClass_NTamd64]
    HKR,,,,%ClassName%
    HKR,,Icon,,0
    HKR,,EnumPropPages32,,"Prop64.dll,PropPageProvider"

    I also tried by including AddProperty in DDInstall section , but no change in icon . Also tried by changing the icon number as 101 and a negative number.But no change in the icon. Blue Question mark was there on the icon.

    Please let me know the possible solutions  if any one has an idea why there is a blue question mark over white circle on an icon picked up by device manager in windows 7

    Thanks in advance....

    Reshrem


    • Edited by Reshrem Friday, May 3, 2013 6:35 AM
    Monday, April 29, 2013 1:08 PM

Answers

All replies

  • Hello,

    did you try to take a look here: %WINDIR%\inf\setupapi.dev.log it might help you understand what the problem is.

    You might also rename the file and repeat the installation process so you can clear out all previous installation already exists in this file.

    Thanks!

    Alon

    Monday, April 29, 2013 3:19 PM
  • You can also try using pnputil (in command line)

    // Look for 3rd party packages
    pnputil.exe -e

    //after you found what you want to delete (Force delete package oemX.inf)
    pnputil.exe -f -d oemX.inf              

    Monday, April 29, 2013 6:23 PM
  • Any one please tell me the significance of icon number in inf file?

    For windows XP the class install section in INF file looks like this:

    [HwClass_NTx86]
    HKR,,,,%ClassName%
    HKR,,Icon,,101
    HKR,,EnumPropPages32,,"Prop.dll,PropPageProvider"..

    For windows 7 64 bit :

    [HwClass_NTamd64]
    HKR,,,,%ClassName%
    HKR,,Icon,,0
    HKR,,EnumPropPages32,,"Prop64.dll,PropPageProvider"..

    The icon number was different in two cases.Whether it may cause any change in icon picked up by device manager??

     

    • Edited by Reshrem Tuesday, April 30, 2013 4:23 AM
    Tuesday, April 30, 2013 4:10 AM
  • Can you please send an image?
    Tuesday, April 30, 2013 7:07 AM
  • http://social.msdn.microsoft.com/Forums/getfile/278652

    Please check this URL..

    Tuesday, April 30, 2013 8:57 AM
  • Why are you defining a new class?

    If you are defining a new class just to get an icon for this device, you can set device specific icons (DeviceIcon - http://msdn.microsoft.com/en-us/library/windows/hardware/ff546318(v=vs.85).aspx ) and you don't need to define a new class.

    The Icon number describes which icon in the DLL should be used: http://msdn.microsoft.com/en-us/library/windows/hardware/ff546335(v=vs.85).aspx

    • If the Icon value is positive, it represents a resource identifier for a resource. The resource is extracted from the class installer DLL, if the Installer32 key is specified, or from the property page DLL, if the EnumPropPages32 key is specified. The value "0" represents the first icon in the DLL. The value "1" is reserved. 
    • If the Icon value is negative, the absolute value is the resource identifier of the icon in SetupApi.DLL.
    Tuesday, April 30, 2013 3:56 PM
  • Also tried to change the icon by including AddProperty under DDInstall section.But it reflects no change in icon
    Friday, May 3, 2013 5:43 AM
  • Can you please explain more about  %WINDIR%\inf\setupapi.dev.log ?
    Tuesday, May 7, 2013 6:05 AM
  • that is the log which pnp writes to when a device is installed.

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

    Tuesday, May 7, 2013 6:50 AM
  • I have shared the INF file. I added the AddProperty in DDInstall Section as shown below and then tried to install the driver.But the blue question mark remains in the icon after installing the driver.

    [SourceDisksFiles.amd64]
    Driver64.sys = 1
    Prop64.dll = 1
    ;A.bin   = 1
    ;B.bin  = 1
    ;C.bin   = 1
    ;D.bin     = 1

    [DestinationDirs]
    DLL_Files_NTamd64=10,system32
    DefaultDestDir = 12

    [ClassInstall32.NTamd64]
    Addreg = HwClass_NTamd64

    [ControlFlags]
    ExcludeFromSelect = *

    [Manufacturer]
    %Mfg% = Company, NTamd64

    [Company.NTamd64]
    %DeviceDesc% = Device, PCI\VEN_aaaa&DEV_bbbb&SUBSYS_ccccccccc
    AddProperty = HwClass_NTamd64

    [HwClass_NTamd64]
    HKR,,,,%ClassName%
    HKR,,Icon,,101
    HKR,,EnumPropPages32,,"Prop64.dll,PropPageProvider"

    [Device.NTamd64]
    DriverVer = dd/mm/yy, w.x.y.z
    CopyFiles = Common_Files,Files_NTamd64,DLL_Files_NTamd64

    [Common_Files]
    A.bin
    B.bin
    C.bin
    D.bin

    [Files_NTamd64]
    Driver64.sys

    [DLL_Files_NTamd64]
    Prop64.dll

    [Device.NTamd64.Services]
    AddService = Driver, %SPSVCINST_ASSOCSERVICE%, Service_NTamd64, EventLog_NTamd64

    [Service_NTamd64]
    DisplayName    = %ServiceDisp%
    Description    = %ServiceDesc%
    ServiceType    = %SERVICE_KERNEL_DRIVER%
    StartType      = %SERVICE_DEMAND_START%
    ErrorControl   = %SERVICE_ERROR_NORMAL%
    ServiceBinary  = %12%\Driver64.sys 
    DelReg         = Clear_Parms
    AddReg         = Parms

    [Clear_Parms]
    HKR, Parameters

    [Parms]
    HKR, Parameters, AParm, %ADDREG_TYPE_SZ%, "\SystemRoot\System32\Drivers\A.bin"
    HKR, Parameters,BParm, %ADDREG_TYPE_SZ%, "\SystemRoot\System32\Drivers\B.bin"
    HKR, Parameters, CParm, %ADDREG_TYPE_SZ%, "\SystemRoot\System32\Drivers\C.bin"
    HKR, Parameters, DParm, %ADDREG_TYPE_SZ%, "\SystemRoot\System32\Drivers\D.bin"

    [EventLog_NTamd64]
    AddReg = EventLog_AddReg_NTamd64

    EventLog_AddReg_NTamd64]
    HKR, , TypesSupported,   %ADDREG_TYPE_DWORD%, 7 
    HKR, , EventMessageFile, %ADDREG_TYPE_EXPSZ%, ""%%SystemRoot%%\System32\Drivers\Driver64.sys" 


    [Strings]
    ClassName   = "Class name"
    DeviceDesc  = "Device name"
    ServiceDisp = "DeviceDriver"
    ServiceDesc = "ServiceDescription."
    DiskId      = "Driver Install Disk"
    Mfg         = "Manufacturer."
    SPSVCINST_ASSOCSERVICE = 0x00000002
    SERVICE_KERNEL_DRIVER  = 1
    SERVICE_DEMAND_START   = 3
    SERVICE_DISABLED       = 4
    SERVICE_ERROR_NORMAL   = 1
    ADDREG_TYPE_DWORD      = 0x00010001
    ADDREG_TYPE_SZ         = 0x00000000
    ADDREG_TYPE_EXPSZ      = 0x00020000


    • Edited by Reshrem Friday, May 10, 2013 11:54 AM
    Friday, May 10, 2013 11:46 AM
  • Please read the documentation for adding an icon from a DDInstall section (DeviceIcon - http://msdn.microsoft.com/en-us/library/windows/hardware/ff546318(v=vs.85).aspx ).  You are not specifying an add property section correctly.  Also, you have the AddProperty directive in a models section, not the DDInstall install section (which would be [Device.NTamd64] in your INF).
    Friday, May 10, 2013 3:32 PM
  • Thanks for the comment. It was one of the try out that I had done.First I added  AddProperty  under  DDInstall section [Device.NTamd64]. But it reflects no change in the icon.So I tried to add  AddProperty in INF file as shown above whether it made any changes in the icon.I forget to mention it above.Sorry for that.

    AddProperty in DDInstall section in my INF is shown below:
    [ClassInstall32.NTamd64]
    Addreg = HwClass_NTamd64

    [ControlFlags]
    ExcludeFromSelect = *

    [Manufacturer]
    %Mfg% = Company, NTamd64

    [Company.NTamd64]
    %DeviceDesc% = Device, PCI\VEN_aaaa&DEV_bbbb&SUBSYS_ccccccccc

    [Device.NTamd64]
    DriverVer = dd/mm/yy, w.x.y.z ; see also above
    CopyFiles = Common_Files,Files_NTamd64,DLL_Files_NTamd64
    AddProperty = HwClass_NTamd64

    [HwClass_NTamd64]
    HKR,,,,%ClassName%
    HKR,,Icon,,101
    HKR,,EnumPropPages32,,"Prop64.dll,PropPageProvider"

    Is this the correct way of specifying AddProperty section?

    Monday, May 13, 2013 11:02 AM