[wdmaudiodev] Re: An Unusual MSVAD question

  • From: "Don Bell" <0dbell@xxxxxxxxx>
  • To: wdmaudiodev@xxxxxxxxxxxxx
  • Date: Mon, 27 Aug 2007 15:50:59 -0400

Elli, thank you very much for your answer!

I am also late in my reply, since my project took me elsewhere - far from
device driver writing. Now that I am back to my MSVAD based driver, I can
find the time re-examine some issues that were left unclear (to me).

What you say about MSVAD being "software enumerated PnP Driver" is in line
with my understanding. I also thought that I can use the WDK devcon.exe to
install the driver with my genrated PnP ID and my INF file. However, in
practice this doesn't work consistently. Either there are serious bugs in
devcon.exe (as far as a software enumerated PnP driver is concerned) or...
the software enumeration is incorrect (a bug in MSVAD simple).

The latter possibility is why I asked about the following two lines in
msvad.inf:

[MicrosoftDS]
%MSVAD_Simple.DeviceDesc%=MSVAD_Simple,,*MSVADSimple

The MSVAD software enumeration yields the following registry key:

HKLM\SYSTEM\CurrentControlSet\Enum\Root\MEDIA\0000

Note: devcon.exe works perfectly with MSVAD simple on a freshly installed
Windows XP system. It is the uninstall and re-install that are completely
messy.

Since I didn't have time to delve into that back then, I worked around the
problem by simply faking keyboard user input to device manager to somehow
automate the driver install / uninstall process.

Apparently, the installation via device manager "knows" something about WDM
Audio, that the generic devcon.exe doesn't know. So it knows how to add and
remove the accompanying KMixer, codecs, etc. registry entries.

Any additional ligh shed on this would be appreciated.

Thanks,
Don


On 8/2/07, MailingList <maillist@xxxxxxxxxxx> wrote:
>
>  Hello Don,
>
>
> late answer, MSVAD driver is a software enumerated PnP Driver. You can use
> the normal SetupApi stuff to install this driver. This means
>
> you can use the WDK devcon.exe to install the driver with your genrated
> PnP ID and your INF file.
>
>
> regards
>
>  elli
>
>
>
>    >
>
> My question is "unusual" in the sense that it doesn't pertain to audio
> kernel programming per-se but rather the installation of such driver (which
> is always part of such project):
>
>
>
> Is it possible to "properly" install one of the MSVAD samples (say,
> "Simple") using DPInst?
>
>
>
> I know that it is possible to install it using Control Panel's [Add
> Hardware]. It works perfectly using this manual method (which unfortunately
> necessitates interactive steps). It also uninstalls very well that way.
>
>
>
> But I need an automated method (optionally silent) and my experiments with
> devcon.exe and DPInst.exe so far yielded very frustrating results. In the
> case of devcon.exe, the results were inconsistent as well.
>
>
>
> My understanding is that despite being virtual, an MSVAD driver *is* a PnP
> driver. Am I wrong?
>
>
>
> Also, a clarification of why Microsoft decided to place the "hardware id"
> in the Description statement in the .inf file in the "CompatibleIds" field
> (instead of the "DeviceId" field) would be very helpful. I am talking about
> the following line in msvad.inf:
>
>
>
> [MicrosoftDS]
>
> %MSVAD_Simple.DeviceDesc%=MSVAD_Simple,,*MSVADSimple
>
>
>
> What does Control Panel's [Add Hardware] do that is missing from
> devcon.exe and DPInst.exe? What do I need to do in order to create an
> automated install for MSVAD simple? Is my only recourse to write a dedicated
> installation program from scratch using the DifxApi?
>
>
>
>
>
> Thanks,
>
> Don
>
>
>
>
>
>
>
>
>
>
>
>
>
> --
>
> Best regards,
>
>  MailingList                            
> mailto:maillist@xxxxxxxxxxx<maillist@xxxxxxxxxxx>
> ****************** 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 URL to WDMAUDIODEV page:
> http://www.wdmaudiodev.com/

Other related posts: