[wdmaudiodev] Re: Device enumeration and filtering.

  • From: Tim Roberts <timr@xxxxxxxxx>
  • To: "wdmaudiodev@xxxxxxxxxxxxx" <wdmaudiodev@xxxxxxxxxxxxx>
  • Date: Wed, 25 May 2011 10:15:37 -0700

Robert Bielik wrote:
> Anton Shpakovsky skrev 2011-05-25 10:35:
>> AFAIK, 6994ad04-93ef-11d0-a3cc-00a0c9223196 stands for KSCATEGORY_AUDIO. 
>> While "...\wave" simply represent the wave filter for the driver, correct? I 
>> still do not get how to identify exactly my driver.. Or may be I can/must 
>> change the wave filter name? I doubt..
> What you do is use the device path with CreateFile and DeviceIoControl to get 
> the KSPROPERTY_GENERAL_COMPONENTID from the enumerated filter. If it 
> DeviceIoControl succeeds AND the Product GUID matches your filters 
> (PID_MSVAD), you know that that is yours' (and thus you can exclude it).

If you already have an IBaseFilter from the system device enumerator,
this is more trouble than is necessary.  As I said earlier, you can just
query the IBaseFilter for an IKsControl interface and call its
KsProperty method.  Ksproxy.ax already has a file handle open, and will
manage the creation of the ioctl.

Tim Roberts, timr@xxxxxxxxx
Providenza & Boekelheide, Inc.


WDMAUDIODEV addresses:
Post message: mailto:wdmaudiodev@xxxxxxxxxxxxx
Subscribe:    mailto:wdmaudiodev-request@xxxxxxxxxxxxx?subject=subscribe
Unsubscribe:  mailto:wdmaudiodev-request@xxxxxxxxxxxxx?subject=unsubscribe
Moderator:    mailto:wdmaudiodev-moderators@xxxxxxxxxxxxx


Other related posts: