Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Hay tres modos en los que el IDE puede funcionar, como se indica a continuación:
-
La forma en que el motor de depuración personalizado (DE) realiza la transición entre estos modos es una decisión de implementación que requiere que esté familiarizado con los mecanismos de transición. El DE puede implementar o no directamente estos modos. Estos modos son realmente modos de depuración de paquetes que cambian en función de la acción del usuario o los eventos del DE. Por ejemplo, la transición del modo de ejecución al modo de interrupción se inicia mediante un evento de detención del DE. La transición del modo de interrupción al modo de ejecución o al modo de paso es instigada por el usuario que realiza operaciones como Paso o Ejecución. Para obtener más información sobre las transiciones de DE, vea Control de ejecución.
Modo de diseño
El modo de diseño es el estado inactivo de la depuración de Visual Studio, durante el cual puede establecer funciones de depuración en la aplicación.
Solo se usan algunas características de depuración durante el modo de diseño. Un desarrollador puede elegir establecer puntos de interrupción o crear expresiones de observación. El DE nunca se carga ni se llama mientras el IDE está en modo de diseño. Solo se realiza la interacción con el DE durante los modos de ejecución y interrupción.
Modo de ejecución
El modo de ejecución se produce cuando un programa se ejecuta en una sesión de depuración en el IDE. La aplicación se ejecuta hasta la finalización, hasta que se alcanza un punto de interrupción o hasta que se produce una excepción. Cuando la aplicación se ejecuta hasta la finalización, el DE pasa al modo de diseño. Cuando se alcanza un punto de interrupción o se produce una excepción, DE realiza la transición al modo de interrupción.
Modo de interrupción
El modo de interrupción se produce cuando se suspende la ejecución del programa de depuración. El modo de interrupción ofrece al desarrollador una instantánea de la aplicación en el momento de la interrupción y permite al desarrollador analizar el estado de la aplicación y cambiar cómo se ejecutará la aplicación. El desarrollador puede ver y editar código, examinar o modificar datos, reiniciar la aplicación, finalizar la ejecución o continuar la ejecución desde el mismo punto.
El modo de interrupción se introduce cuando el DE envía un evento de detención sincrónica. Los eventos de detención sincrónica, también denominados eventos de detención, notifican al administrador de depuración de sesión (SDM) y al IDE que la aplicación que se está depurando ha dejado de ejecutar código. Las interfaces IDebugBreakpointEvent2 e IDebugExceptionEvent2 son ejemplos de eventos de detención.
La detención de eventos continúa mediante una llamada a uno de los métodos siguientes, que realizan la transición del depurador del modo de interrupción al modo de ejecución o paso:
Modo por pasos
El modo paso a paso se produce cuando el programa avanza a la siguiente línea de código, entra en, sobrepasa o sale de una función. Se ejecuta un paso llamando al método Step. Este método requiere DWORDque especifique las enumeraciones STEPUNIT y STEPKIND como parámetros de entrada.
Cuando el programa pasa correctamente a la siguiente línea de código o a una función, o se ejecuta en el cursor o en un punto de interrupción establecido, el DE realiza la transición automáticamente al modo de interrupción.