locked
Visual Studion 2005 Debugger Halts on DirectShow mixed debugging RRS feed

  • Question

  • I am converting my aplication that was build in Visual Studio 2003 to Visual Studio 2005.

    The application uses DirectShow trans in-place filters I created. When tracing to the call that starts the GraphManager rendering a dialog appears saying

    "Protection Error"

    "Debugger detected - please close it down and restart!"

    Studio 2003 traces into this code perfectly. What happened in Studio 2005?

    I have the "Enable Unmanaged Debugging" checked in VS2005. Unchecking this prevents the dialog from appearing. Very strange.

    Also, whan rebuilding the DirectX base classes what can I do to eliminate the PVOID64 delcaration problem in winnt.h?

    -John

     

    Thursday, March 23, 2006 12:54 AM

Answers

  • Some DirectShow filters check for “debugger active”, which means that the filter will halt the replay if a debugger is detected. Each filter is registered with a merit value. When the filter graph manager builds a graph, it enumerates all the filters registered with the correct media type. Then it tries them in order of merit, from highest to lowest. (It uses additional criteria to choose between filters with equal merit.) For this reason it can be unclear exactly what filters are used for the current rendering. You could use a filter manager (eg. RadLight Filter Manager 1.4 from http://www.free-codecs.com/RadLight_Filter_Manager_download.htm or better yet: use GraphEdit.exe) to locate the actual filter(s) used during debug and remove it.

    I had same problem playing an AVI file. The filter was located to “Nero Digital AVC Video Enc”. Uninstalling NERO 6.0 solved the problem.

     

    Greetings

    Martin Skibye

    Tuesday, April 24, 2007 7:59 AM

All replies

  • Some DirectShow filters check for “debugger active”, which means that the filter will halt the replay if a debugger is detected. Each filter is registered with a merit value. When the filter graph manager builds a graph, it enumerates all the filters registered with the correct media type. Then it tries them in order of merit, from highest to lowest. (It uses additional criteria to choose between filters with equal merit.) For this reason it can be unclear exactly what filters are used for the current rendering. You could use a filter manager (eg. RadLight Filter Manager 1.4 from http://www.free-codecs.com/RadLight_Filter_Manager_download.htm or better yet: use GraphEdit.exe) to locate the actual filter(s) used during debug and remove it.

    I had same problem playing an AVI file. The filter was located to “Nero Digital AVC Video Enc”. Uninstalling NERO 6.0 solved the problem.

     

    Greetings

    Martin Skibye

    Tuesday, April 24, 2007 7:59 AM
  • I had this problem moving a 2003 app to 2005. Having tired all the 'fixes' on the net, none worked (nero, divx, etc.) and I've ended up building a new 2005 project...this debugs fine...

    Sunday, January 17, 2010 2:25 PM