[wdmaudiodev] Re: Debugging an APO

  • From: "Leonard Shoell" <lshoell@xxxxxxxxxxxxxxxxx>
  • To: <wdmaudiodev@xxxxxxxxxxxxx>
  • Date: Sat, 7 Jun 2008 07:33:01 -0600

For debugging APOs and property page extensions I prefer to use Visual
Studio 2005. WinDbg also works, but I like the debugger is VS2005. Here are
a few hints:

 

1.       Run audiosrv in its own container by doing the following from a
command line and rebooting:

sc config audiosrv type= own

2.       In VS 2005 set the symbol file location (Tools | Settings |
Debugging | Symbols)

3.       Start debugging by attaching to AudioDG. (In the "Attach to
Process" dialog, check two checkboxes at the bottom "Show processes from all
users" and "Show process in all sessions".

 

Leonard

 

From: wdmaudiodev-bounce@xxxxxxxxxxxxx
[mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx] On Behalf Of Tim Roberts
Sent: Friday, June 06, 2008 5:45 PM
To: wdmaudiodev@xxxxxxxxxxxxx
Subject: [wdmaudiodev] Re: Debugging an APO

 

Tim Roberts wrote: 

I'm just digging in to the creation of a GFX APO, and I'm looking for a few
debugging tips.

I don't seem to see my OutputDebugString output in dbgview when my DLL is
loaded into the audio engine service.  I do see the messages when it gets
loaded by Control Panel, but that's not the interesting case.

How can I insert a new version while I'm debugging?  Even if I disable the
Windows Audio and Windows Audio Endpoint Builder services and disable my
HDAUDIO device, my APO DLL remains loaded in one of the service host
processes, and I can't copy a new version into place while it is loaded.

Any debug hints from folks who have been in the trenches would be
appreciated.


Well, for what it's worth, I can get the debug messages if I attach a
debugger to the audiodg.exe process itself.  I still don't understand why
the messages don't appear in dbgview.

And the issue about not being able to update the DLL seems to have been a
transient thing.  As long as I stop the two services, I can replace the DLL
just fine.



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

Other related posts: