Custom device icon not working with "addproperty" and "deviceicon" INF directives

My KMDF driver creates it’s own class and under Vista it’s currently got the generic gear icon.

I want to provide my own icon. I’ve managed to accomplish this using an stubbed class installer DLL which does nothing but return from the callback. The icon resource is also embedded in this DLL. While this works, it’s a bit of an overkill since I’m really only after the icon.

I’m trying to accomplish the same goal using the methods discussed here http://download.microsoft.com/download/a/f/7/af7777e5-7dcd-4800-8a0a-b18336565f5b/CustomIcon.doc

This discusses using the addproperty and deviceIcon directives but this doesn’t seem to work. I still keep getting the standard “gear” icon instead of my custom one. Does this method work? There seems to be very little info on this method aside from this document. I can’t find any samples that use this method and the only mention of it in the DDK refer to SideShow so I’m not sure if this method even works for KMDF drivers.

Is there a better way to get a class and device icon over than what I’m trying to do?

Thanks in advance.
Jason.

Custom icons using AddProperty works only
(a) with Vista and LH
(b) if the device class entry is new

If you installed the same driver class before, it is not updated
(neither name nor icon).

-H

xxxxx@msn.com wrote:

I’m trying to accomplish the same goal using the methods discussed here
>
http://download.microsoft.com/download/a/f/7/af7777e5-7dcd-4800-8a0a-b18336565f5b/CustomIcon.doc

I was testing this on Vista. What does the class have to do with a “deviceicon” ? Using the classinstaller for this purpose would make sense but this addproperty was in the device install portion of the INF, not the class install portion.

xxxxx@msn.com wrote:

I was testing this on Vista. What does the class have to do with a “deviceicon” ?

The icon used for a device in Device Manager is entirely determined by
its INF class.


Tim Roberts, xxxxx@probo.com
Providenza & Boekelheide, Inc.