C/Visual C - Depuración ActiveX Visual C++ desde VB 6.0

 
Vista:

Depuración ActiveX Visual C++ desde VB 6.0

Publicado por Juan (2 intervenciones) el 03/02/2005 18:01:14
Estimados compañeros:

Tengo un ejecutable cliente en VB 6.0 que instancia un objeto COM implementado en Visual C++ 6.0 mediante la función CreateObject. Posteriormente ejecuto un método determinado de dicho componente.

Necesitaro poder debuggear tanto la aplicación cliente (realizada en VB 6.0) así como el componente COM (implementado en Visual C++ 6.0). Si ambos elementos estuvieran implementados en VB 6.0 es bastante sencillo, pero al estar generados con distintos entornos parece que la solucion se complica. He mirado en diversos libros y tutoriales pero no he conseguido ninguna respuesta válida.

Si alguien puede ayudarme le estaría muy agradecido, ya que es un tema muy urgente.

Gracias de antemano.

Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Depuración ActiveX Visual C++ desde VB 6.0

Publicado por fernando.gomez (1603 intervenciones) el 05/02/2005 02:20:55
Mmm... Se me ocurren tres opciones. La más sencilla sería que emplearas la utilería ActiveX Control Test Container, o el OLE View.

Otrora cuando trabajaba con COM, en alguna ocasión tuve que crear un componente similar que corriera con VB6. Para depurar la parte de C++, carga Visual C++ y en las propiedades del proyecto especifica el nombre de tu EXE en VB. Así, cuando corras la librería (F5) te cargará el programa. Sin embargo, así no podrás depurar el EXE de VB.

Agárrate: lo que yo hice en una ocasión fué en lugar de especificar el EXE VB6, lo que hice fue especificar el EJECUTABLE DE VB6. Así, cuando corría la DLL (VC++) me cargaba el entorno de VB6. Entonces abría el proyecto VB6 y corría el programa. De tal suerte, que tenía ambos ambientes corriendo y funcionando. Sin embargo, tienes el inconveniente de que cuando terminas de depurar en VC++, cierras el entorno VB6. Ni modo.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Depuración ActiveX Visual C++ desde VB 6.0

Publicado por Juan (2 intervenciones) el 05/02/2005 13:56:13
Hola Fernando:

En primer lugar quiero agradecerte por haberme respondido y planteado las posibles soluciones.

Pero tengo que decirte que no consigo debuggear el ActiveX DLL implementado en C++. A pesar de añadir los "breakpoint" necesarios para que la depuración se detenga justo en el método que se invoca desde el .exe implementado en VB 6.0, no consigo que el debugger funcione correctamente. De hecho lo único que se visualiza (y da la sensación de que se está depurando el programa) es código ensamblador, pero realmente no comprendo lo que está sucediendo.
¿Sabes por qué me sale el código ensamblador y no consigo debuggear el código fuente como tal (a este respecto comentarte que dispongo de los fuentes del componentes ActiveX así como del .exe VB 6) ¿Me podrías dar algún consejo o plantearme alguna otra solución alternativa?

De antemano, muchísimas gracias.

Saludos.




Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar