views:

214

answers:

2

I'm trying to debug my DirectShow source filter. I'm using Delphi Pro 6 on Windows XP along with the DSPACK component library. I'm using Skype as my host application, which I set in the Parameters option in the Run menu, for testing my source filter DLL (ax file extension). Skype runs fine and I see a stream of my OutputDebugString messages in the Event Viewer, but none of my breakpoints are ever hit. In my Project Settings I have optimizations off, stack frames on, debug DCUs on, Range Checking on, and Overflow checking on. Each time I modify my code and run a test I:

  • Do a full build
  • Unregister the DirectShow filter (regsvr32 /u)
  • Register the DirectShow filter (regsvr32)
  • Run Skype as my Host application from the IDE

When an Exception occurs, the IDE does trap it and pops up an error dialog box with the option to view the assembler code in the CPU window. However none of my breakpoints are being hit. Can anyone tell me how to get breakpoints working?

Thanks.

+2  A: 

Sounds to me like you're building with debug information off, either in the project options or with a $D- switch somewhere in the code or in an include file. Check to make sure you've got debug information available.

Mason Wheeler
+2  A: 

Along with the debug option indicated by Mason Wheeler, use a full map file. And make sure that there aren't old DCUs and BPLs in the search path. Also, consider using EurekaLog or MadExcept - even the trial versions should be able to show you what's gong on when it blows up.

Chris Thornton