Depurando COM+ en Delphi7
Recopilado y compilado por Liu Xiaoming (Cipher)
El problema más problemático en el desarrollo de sistemas de aplicaciones COM+ es cómo depurar componentes COM+. Dado que COM+ se ejecuta en el entorno de ejecución COM+, los programadores de Delphi no pueden establecer directamente puntos de interrupción en el servidor de aplicaciones para depurar en el IDE de Delphi como el sistema de aplicaciones distribuidas de múltiples niveles de Delphi.
De hecho, Delphi aún puede depurar componentes COM+ en el entorno de desarrollo integrado de Delphi, o permitir a los programadores establecer puntos de interrupción en la unidad de programa del componente COM+ en el entorno de desarrollo integrado y luego ejecutar la aplicación cliente para llamar al componente COM+. En este momento, Delphi llevará el control de ejecución al entorno de desarrollo integrado de Delphi y se detendrá en el punto de interrupción establecido por el programador para permitirle comenzar a depurar. De ahora en adelante, los programadores pueden depurar componentes COM+ tal como depuran aplicaciones normales. Sin embargo, para depurar componentes COM+ de esta manera, los programadores primero deben realizar algunas configuraciones.
1. Active el proyecto del componente COM+ que se va a depurar en el entorno de desarrollo integrado de Delphi, haga clic en el menú Proyectos|Opciones, seleccione la página Vinculador en el cuadro de diálogo emergente y seleccione incluir información Td32 e incluir símbolo de depuración remota;
2. Haga clic en el menú Ejecutar|Instalar objetos Com+ para registrar el componente COM+, preferiblemente en una aplicación nueva o en una aplicación existente (esta aplicación debe ser generada por el programa COM registrado de Delphi).
3. Ejecute el Panel de control de Win2000 | Herramientas administrativas | Servicios de componentes, busque la aplicación registrada en COM en la aplicación COM+, haga clic derecho, seleccione el menú "Propiedades", en el cuadro de diálogo emergente, seleccione la página "Avanzado". y seleccione La opción "Iniciar en el depurador" tendrá algo similar a lo siguiente en la ruta de depuración a continuación: "C:/Program Files/Borland/Delphi7/Bin/bordbg70.exe" dllhost.exe /ID de proceso:{9CEC476D-83A5-4C2B-AFF1-3E83A147B866}
4. Regrese al entorno de desarrollo integrado de Delphi, haga clic en el menú Ejecutar|Parámetros y, en el cuadro de diálogo, configure Hostapplication en: C:/WINNT/system32/DLLHOST.EXE (esto debe configurarse de acuerdo con la situación de instalación de su sistema operativo). Los parámetros se establecen en: /ProcessID:{9CEC476D-83A5-4C2B-AFF1-3E83A147B866}; el valor de este GUID debe ser coherente con el valor del atributo en el servicio del componente Win2000 y se puede copiar directamente desde allí.
5. Establecer puntos de interrupción y ejecutar COM en el entorno de desarrollo integrado de Delphi;
6. Ejecute el programa cliente que llama a este COM en Windows (o en el entorno Delphi recién abierto).
En este momento, encontrará que el COM en el entorno de desarrollo de Delphi se detiene en el punto de interrupción y puede continuar con el seguimiento y la depuración en un solo paso.