<p>I'm developing a C# assembly which is to be called via COM from a Delphi 7 (iow, native win32, not .net) application.</p>

<p>So far, it seems to work. I've exported a TLB file, imported that into my Delphi project, and I can create my C# object and call its functions.</p>

<p>So that's great, but soon I'm going to <strong>really</strong> want to use Visual Studio to debug the C# code while it's running. Set breakpoints, step through code, all that stuff.</p>

<p>I've tried breaking in the Delphi code after the COM object is created, then looking for a process for VS to attach to, but I can't find one.</p>

<p>Is there a way to set VS2008 up to do this? I'd prefer to just be able to hit f5 and have VS start the Delphi executable, wait for the C# code to be called, and then attach itself to it.. But I could live with manually attaching to a process, I suppose.</p>

<p>Just please don't tell me I have to make do with MessageBox.Show etc.</p>

Place the following in the method you wish to debug:
```
```
#if DEBUG
    if (!System.Diagnostics.Debugger.IsAttached)
        Debugger.Launch();
#endif
```
```
When you want to debug, build a debug version and use that in your application.  When this code runs, a dialog pops up asking if you want to attach a debugger.