visual studio puede hay encuentra encontrar depurar depurador como asociado archivo adjuntar abrir c++ com asp-classic vc6

c++ - puede - visual studio adjuntar



¿Cómo depurar objeto COM en Visual Studio 6.0 que se crea en una página ASP? (2)

En primer lugar, el archivo PDB (producido durante la compilación) debe estar en el mismo directorio con DLL (se puede establecer en las propiedades del proyecto).

Si su objeto no utiliza alguna funcionalidad específica de ASP (Solicitud, Respuesta, Objetos de sesión) puede copiar su código de invocación al archivo .vbs y depurar mediante la configuración de cscript.exe your.vbs como programa de depuración de destino.

Hay explicaciones ( por ejemplo ) sobre cómo depurar DLL ISAPI: también son aplicables a su objeto COM (desde el punto de vista del depurador / OS, ambas son DLL cargadas en el proceso de IIS). Ponga atención a su versión de IIS y cosas dentro / fuera del proceso.

Y, por último, si nada más ayuda, puede agregar un poco de registro a través de la función OutputDebugString y verlo en el programa gratuito DebugView .

Tengo un antiguo componente COM de C ++ que debe permanecer en formato Visual Studio 6.0. No puedo entender cómo depurar el código en el componente COM real.

Puedo compilarlo en modo de depuración, agregar puntos de interrupción y adjuntarlo al proceso dllhost.exe, pero el entorno de Visual Studio solo me mostrará el desmontaje de dllhost.exe y no de mi código fuente (Tampoco se detiene) en los puntos de interrupción).

Recuerdo que hace un tiempo había una forma de hacer que IIS (o inetinfo.exe) fuera el objetivo de su acción de depuración (es decir, cuando Visual Studio 6.0 le solicite el ejecutable para iniciar su dll) e IIS se ejecutaría en un único modo de proceso. Había una clave de registro que necesitabas cambiar, pero Google no ayudó.


Si se trata de un componente COM basado en VB6, puede abrir el proyecto en VB6 y ejecutarlo (no se puede ejecutar un proyecto DLL). Las propiedades del proyecto tienen alguna opción por la cual se le puede pedir que se ejecute para que se ejecute y se registre.

Ahora, intente golpear la página ASP, que hace una llamada al componente COM. Los puntos de corte establecidos en los archivos de la clase se verán afectados, ya que las llamadas se realizan desde la página ASP.