views:

54

answers:

1

Hi there, I have an exe in Csharp that references a C++ dll and a VB6 dll.

I can successfully step into the C++ from the Csharp in Visual Studio 2008 when I open the corresponding files.

I achieved the same ability to step into the VB6 from the Csharp by generating a pdb file along with the VB6 dll.

The only issue I have is that when debugging the VB6, .NET and C++ objects show as <void> in the 'locals' and 'watch' windows.

Is it expecting too much to be able to evaluate objects across 3 languages in the one IDE?

Or is there an alternative solution?

New to COM, so sorry if this is an obvious question, thanks for any help.

Edit, just relased a vital part of my question disappeared without a code window.

A: 

VB6 was developed before .Net was released and so it would have no understand of .Net references. Even if the .Net objects were available to VB6 as COM objects, I don't think VB6 has ability to allow you to examine them at debug time.

logicnp
I think he's using the VS2008 debugger. If the .Net objects are really pretending to be COM objects, you might expect to be able to view them in the debugger just like any other COM object.
MarkJ