Rename HID-Compliant mouse?

Discussion in 'Windows Vista Drivers' started by 102, May 2, 2009.

  1. 102

    102 Guest

    Hi all,
    My HID mini driver defines two Top-level collections correspond to virtual
    mouse and keyboard devices in report descriptor, and when i install the
    driver, they appear in Device Manager with the name HID-Compliant Mouse and
    HID-Compliant Keyboard. So how can i name them with the name i like ? (ex: My
    virtual mouse, My virtual keyboard....)
    Thanks,
    --Thong
     
    102, May 2, 2009
    #1
    1. Advertisements

  2. you will need to have your own INF...but if you want an install w/out a
    prompt you will need to get them signed
     
    Doron Holan [MSFT], May 4, 2009
    #2
    1. Advertisements

  3. 102

    102 Guest

    - Can i define one INF file to install those two devices, mouse and
    keyboard? Note : i define mouse and keyboard devices in one report descriptor
    - I don't understand why i define two devices in one report descriptor but
    PnP Manager send 4 queries IRP_MN_QUERY_ID with IdType is BusQueryHardwareIDs
    and the same PDO? (I think it should only send 2 queries for
    BusQueryHardwareIDs with different PDOs?). So how can i provide Hardware IDs
    for those two devices ?
     
    102, May 5, 2009
    #3
  4. no, you must have 2 different INFs. each device has its own device class
    and an INF can only have one device class. why are you worried about how
    many query IDs you see for the devices? anyone can send these queries so
    you will probably see more over the lifetime of the driver being loaded.
    hidclass does fwd the queries from the PDOs down the FDO stack so you will
    see all queries for all PDOs (not that you can tell the difference nor
    should you).

    you don't create the hw IDs, hidclass does

    d
     
    Doron Holan [MSFT], May 5, 2009
    #4
  5. 102

    102 Guest

    Thanks for your answer.
    If let the hidclass create the hardwareID, so how can i know what device to
    name for the virtual mouse and keyboard devices, which is called device
    description.
    In the sample vhidmini.inf, to name a virtual device (vendor-defined), it
    does follow :

    ....
    [Vendor.NTx86]
    %VHidDevice% = VHidDevice.Inst, HID\MyVirtualHidDevice
    ....
    [Strings]
    ; *******Localizable Strings*******
    VHidDevice = "Virtual Hid Device (sample)"

    that means we have to know the hardwareID of that device to name it as
    "Virtual Hid Device (Sample)", in this case the hardware ID is
    HID\MyVirtualHidDevice and is provided in respond to IRP_MN_QUERY_ID. That is
    why i confuse with 4 queries IRP_MN_QUERY_ID (with type BusQueryHardwareIDs)
    when i only define two devices (Mouse and keyboard) in one report descriptor.
    So i don't know exactly what device (mouse or keyboard) to provide hwID for
    it in respond to a query IRP_MN_QUERY_ID (with type BusQueryHardwareIDs).

    Thanks,

    --Thong
     
    102, May 6, 2009
    #5
  6. you do not answer the query id (hardware IDs) directly, you fwd it down to
    your PDO

    d

    --

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


     
    Doron Holan [MSFT], May 6, 2009
    #6
  7. 102

    102 Guest

    Here my mini driver is for virtual devices not physical devices. If i don't
    answer the query id, who will do this and what hardware id it get to respond
    to? Because as i see in vhidmini sample, it defines a hardware id
    (HID\MyVirtualHidDevice) to respond to the query id (hardware ID)
    IRP_MN_QUERY_ID from PnP Manager directly.

    Thanks,
    --Thong.
     
    102, May 6, 2009
    #7
  8. the root enumerator should answer the query ID ... but I seem to remember
    there is some issue around root enumerated devices and HID. perhaps this is
    it. for the parent (e.g. the hid miniprt), the hw ID should not start with
    HID\, that is used for the IDs of the children enumerated by the parent.

    d
     
    Doron Holan [MSFT], May 7, 2009
    #8
    1. Advertisements

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.