Inspección

23/09/2007 - 03:55 por jeastman - Hotmail | Informe spam
Hola a todos.

Amigos, en VB6 se podía agregar una inspección e indicar a la herramienta
que detuviera la ejecución del programa cuando el valor de la variable
inspeccionada cambiara.

Ahora estoy trabajando con VC# (más bien empezando) y he conseguido la forma
de agregar una inspección, pero no encuentro la forma de indicarle que
detenda la ejecución del código (pausar) en el momento que dicha variable
cambie de valor.

Por favor, alquien que me ayude y me diga cual es la forma de hacerlo.

´De antemano gracias a todos por su tiempo y colaboración.

Jorge Eastman

Preguntas similare

Leer las respuestas

#1 Luis Miguel Blanco
23/09/2007 - 12:50 | Informe spam
Hola Jorge

Creo que en Visual Studio 2005, esta característica que mencionas se utiliza
a través de un punto de ruptura o breakpoint del depurador. Supongamos que
tenemos el siguiente código fuente:

//
int contador = 0;
int valor = 0;
int numero = 0;

numero = 5;

for (contador = 1; contador < 10; contador++)
{
valor = contador;

if (contador == 5)
numero = 77;
}
//

Y necesitamos que el depurador entre en funcionamiento en la siguiente línea

valor = contador;

Pero cuando la variable "numero", que incialmente tiene el valor 5, cambie
su valor.

Para ello, en primer lugar, debemos situarnos en la línea en la que queremos
que el depurador entre en ejecución y pulsaremos la tecla F9. Dicha línea
cambiará a color rojo, y en el margen del editor de código se mostrará un
círculo del mismo color.

A continuación haremos clic derecho en el círculo rojo y seleccionaremos la
opción de menú Condition (mi versión de Visual Studio está en inglés). Se
abrirá un cuadro de diálogo en el que escribiremos la siguiente expresión de
condición a evaluar:

numero == 5;

Y haremos clic en el radiobutton "Has changed", de forma que cuando la
expresión que hemos escrito cambie, el punto de ruptura que hemos establecido
activará el depurador.

No obstante esto no es suficiente, ya que si ejecutamos el programa,
observaremos que la condición que hemos establecido no es tenida en cuenta, y
el depurador siempre entra en funcionamiento al llegar a dicho punto de
ruptura.

Debemos realizar un paso más que consiste en volver a hacer clic derecho en
el círculo rojo del punto de ruptura y elegir esta vez la opción "Hit Count",
que abrirá un nuevo cuadro de diálogo en el que se nos informa en la lista
desplegable "When the breakpoint is hit" que por defecto, el punto de ruptura
siempre activa el depurador "break always".

Para evitar este comportamiento, abriremos esta lista desplegable y
elegiremos el valor "break when the hit count is equal to" y cambiaremos el
valor del contador de veces en que se alcanza el punto de ruptura a 2 por
ejemplo. De esta forma el punto de ruptura ya sí que activará el depurador
sólo cuando la expresión que hemos escrito como condición cambie.

Espero que estas indicaciones te sirvan de ayuda.

Un saludo
Luis Miguel Blanco
http://www.dotnetmania.com


"jeastman - Hotmail" wrote:

Hola a todos.

Amigos, en VB6 se podía agregar una inspección e indicar a la herramienta
que detuviera la ejecución del programa cuando el valor de la variable
inspeccionada cambiara.

Ahora estoy trabajando con VC# (más bien empezando) y he conseguido la forma
de agregar una inspección, pero no encuentro la forma de indicarle que
detenda la ejecución del código (pausar) en el momento que dicha variable
cambie de valor.

Por favor, alquien que me ayude y me diga cual es la forma de hacerlo.

´De antemano gracias a todos por su tiempo y colaboración.

Jorge Eastman



Respuesta Responder a este mensaje
#2 jeastman - Hotmail
23/09/2007 - 21:08 | Informe spam
Gracias Luis por tu ayuda, voy a probar a ver si me ayuda a detertar el
problema que tengo.

Un cordial saludo.

"Luis Miguel Blanco" escribió
en el mensaje news:
Hola Jorge

Creo que en Visual Studio 2005, esta característica que mencionas se
utiliza
a través de un punto de ruptura o breakpoint del depurador. Supongamos que
tenemos el siguiente código fuente:

//
int contador = 0;
int valor = 0;
int numero = 0;

numero = 5;

for (contador = 1; contador < 10; contador++)
{
valor = contador;

if (contador == 5)
numero = 77;
}
//

Y necesitamos que el depurador entre en funcionamiento en la siguiente
línea

valor = contador;

Pero cuando la variable "numero", que incialmente tiene el valor 5, cambie
su valor.

Para ello, en primer lugar, debemos situarnos en la línea en la que
queremos
que el depurador entre en ejecución y pulsaremos la tecla F9. Dicha línea
cambiará a color rojo, y en el margen del editor de código se mostrará un
círculo del mismo color.

A continuación haremos clic derecho en el círculo rojo y seleccionaremos
la
opción de menú Condition (mi versión de Visual Studio está en inglés). Se
abrirá un cuadro de diálogo en el que escribiremos la siguiente expresión
de
condición a evaluar:

numero == 5;

Y haremos clic en el radiobutton "Has changed", de forma que cuando la
expresión que hemos escrito cambie, el punto de ruptura que hemos
establecido
activará el depurador.

No obstante esto no es suficiente, ya que si ejecutamos el programa,
observaremos que la condición que hemos establecido no es tenida en
cuenta, y
el depurador siempre entra en funcionamiento al llegar a dicho punto de
ruptura.

Debemos realizar un paso más que consiste en volver a hacer clic derecho
en
el círculo rojo del punto de ruptura y elegir esta vez la opción "Hit
Count",
que abrirá un nuevo cuadro de diálogo en el que se nos informa en la lista
desplegable "When the breakpoint is hit" que por defecto, el punto de
ruptura
siempre activa el depurador "break always".

Para evitar este comportamiento, abriremos esta lista desplegable y
elegiremos el valor "break when the hit count is equal to" y cambiaremos
el
valor del contador de veces en que se alcanza el punto de ruptura a 2 por
ejemplo. De esta forma el punto de ruptura ya sí que activará el depurador
sólo cuando la expresión que hemos escrito como condición cambie.

Espero que estas indicaciones te sirvan de ayuda.

Un saludo
Luis Miguel Blanco
http://www.dotnetmania.com


"jeastman - Hotmail" wrote:

Hola a todos.

Amigos, en VB6 se podía agregar una inspección e indicar a la herramienta
que detuviera la ejecución del programa cuando el valor de la variable
inspeccionada cambiara.

Ahora estoy trabajando con VC# (más bien empezando) y he conseguido la
forma
de agregar una inspección, pero no encuentro la forma de indicarle que
detenda la ejecución del código (pausar) en el momento que dicha variable
cambie de valor.

Por favor, alquien que me ayude y me diga cual es la forma de hacerlo.

´De antemano gracias a todos por su tiempo y colaboración.

Jorge Eastman



email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida