c# - scripts - punto de interrupcion visual studio 2017




¿Cómo puedo remediar el "punto de quiebre no será alcanzado actualmente. No se han cargado símbolos para este documento. ”¿Advertencia? (20)

Aplicación de escritorio C # en edición Express. Trabajó entonces no funcionó 5 segundos más tarde.

Intenté lo siguiente.

  • Asegúrese de que la configuración de depuración, el indicador de depuración y la información de depuración completa estén configurados en todos los ensamblajes.
  • Eliminar todas las carpetas bin y obj y todas las DLL relacionadas con el proyecto de toda mi máquina.
  • Recrear proyectos causando el problema desde cero.
  • Reiniciar.

Tengo dos proyectos de WinForms en la solución. Uno de ellos carga la información de depuración, uno no lo hace. Ambos se refieren al conjunto en el que estoy tratando de obtener información de depuración exactamente de la misma manera en el archivo de proyecto. ¿Algunas ideas?

Quiero agregar aquí, sobre todo para mí mismo cuando vuelvo a revisar esta pregunta, que los símbolos no se cargan hasta que se carga el ensamblaje, y el ensamblaje no se carga hasta que se necesita. Si el punto de interrupción está en una biblioteca que solo se usa en una función en su ensamblaje principal, los símbolos no se cargarán (y mostrará el punto de interrupción como no se ha alcanzado) hasta que se llame a esa función.


A veces, a pesar de que le da este error, el breakpoint todavía se ve afectado, así que simplemente ignore el error. Esto sucede con bastante frecuencia en las Views de una MVC web app .


Comience a depurar, tan pronto como haya llegado a un punto de interrupción o haya usado Debug > Break All , use Debug > Windows > Modules . Verá una lista de todos los ensamblados que se cargan en el proceso. Busque el que desea obtener información de depuración para. Haz clic derecho en él y selecciona Symbol Load Information. Obtendrá un cuadro de diálogo que enumera todos los directorios donde buscó el archivo .pdb para el ensamblaje. Verifique esa lista con la ubicación real .pdb. Asegúrate de que no encuentre uno viejo.

En proyectos normales, el ensamblaje y su archivo .pdb siempre deberían haber sido copiados por el IDE en la misma carpeta que su archivo .exe. La carpeta bin \ Debug de su proyecto. Asegúrate de eliminar uno del GAC si has estado jugando con él.


Cosas que debe verificar para ser claros: asegúrese de tener la configuración establecida en 'Depurar' y no en 'Liberar'. Puede depurar el proyecto de inicio en modo 'Lanzamiento', pero no una biblioteca de clases referenciada.


Cruce la publicación de este arreglo de Hans K que encontré en el hilo similar >> AQUÍ << :

Haga clic derecho en la solución -> Propiedades

Busque en Propiedades comunes -> Proyecto de inicio

Seleccione múltiples proyectos de inicio

Seleccione Iniciar acción en los proyectos que necesita depurar.


Desactive la opción "Sólo mi código" en la configuración de depuración / general.


En lugar de hacer todas estas cosas solo

Cerrar y reabrir

La solución solucionará el problema.


En mi caso, se verificó "Optimizar código" en las propiedades de mi proyecto. Esto hizo que VS viera mi ensamblaje como "no mi código" y, a su vez, no cargó símbolos para él.

La solución fue desmarcar esto.


Encontramos la causa de nuestro problema. Este código estaba usando el atributo "CodeBehind" en la directiva de la página del archivo .aspx en lugar del atributo "CodeFile" (ASP.NET 2.0 y más allá). Después de días de desesperación, una simple búsqueda y reemplazo resolvió el problema.


Esto me llevó un tiempo probé otras opciones anteriores y, por alguna extraña razón, la depuración dejó de funcionar.

Herramienta-> Opciones-> Depuración-> General -> (desmarcar) "Requerir que los archivos de origen coincidan exactamente con la versión original"


Haga clic con el botón derecho en Proyecto -> Propiedades -> Ir a pestaña Crear -> Desmarque Optimizar código . Hazlo por cualquier proyecto en tu solución.


Intenté todo lo mencionado anteriormente, pero nada funcionó. [Limpie la solución y compruebe si hay archivos PDB, etc.]

Incluso publicar la misma solución no resolvió el problema.

Luego volví a lo que normalmente hago para resolver (engañar a este Visual Studio obstinado)

Todo lo que hice fue hacer un cambio deliberado en el código y publicar la solución. Entonces revertí el cambio y lo publiqué nuevamente.

Voila [archivos PDB eliminados de espíritus malignos] .. No es una resolución inteligente, pero esto funcionó ...: - |


Intente ejecutar Visual Studio como administrador dentro de Windows.


La respuesta seleccionada me llevó a solucionar mi problema. Pero necesito hacer algunas cosas más:

Incluso con "Debug" seleccionado en el menú desplegable:

Y en el proyecto Propiedades> Construir:

Visual Studio no estaba cargando símbolos en un proyecto específico. Así que en ese menú desplegable seleccioné "Administrador de configuración" y vi que la configuración de mi proyecto web era incorrecta:

Luego lo puse a "Depurar" y comenzó a generar el archivo .pdb . PERO necesito copiar manualmente el PDB y la DLL y colocarlos en la carpeta que VS estaba buscando (aquí es donde me ayudó la respuesta seleccionada):


Ninguna de esas respuestas resolvió mi problema. Intenté otra cosa basada en el hecho de que el proyecto con la parada no era en realidad el proyecto cargado. Encontré que Hans Passant escribió que la .dll donde quiero detener el depurador y los archivos .pdb asociados se copiaron cerca del archivo .exe. Esos archivos tenían una fecha anterior, así que pensé que no se habían actualizado en el tiempo de ejecución. Los eliminé manualmente, Visual Studio creó otro par Y puse este nuevo par cerca del .exe. ¡Ahora funcionan los breakpoins!

Tal vez Visual Studio no pueda copiar y REEMPLAZAR los archivos existentes (.dll y .pdb) cerca del archivo .exe ya que hay otros allí. Así que si borro manualmente entonces VS podría crear uno nuevo cerca de .exe.

Creo que otros cambios (verificaciones y así sucesivamente, a partir de las respuestas de otros) activaron algo y Visual Studio copió y reemplazó la dll y la pdb de la carpeta del proyecto a la carpeta cerca del exe, por lo que fue una solución.

Creo que la causa raíz del problema es que Visual Studio usa otro archivo en tiempo de ejecución, no el archivo del proyecto, con la detención.

¡Tal vez esta respuesta ayude a alguien!


Primero intente reconstruir su proyecto con el botón derecho del mouse, haga clic en el proyecto> Reconstruir Si eso no funciona, intente limpiar el proyecto (haga clic con el botón derecho del mouse en el proyecto> limpiar)

Si eso no funcionó, revisa esto:

  1. Haga clic derecho en su proyecto
  2. seleccione [Propiedades]
  3. seleccione la pestaña [Construir]
  4. asegúrese de que [Define DEBUG constant] y [Define TRACE constant] estén marcados
  5. Haga clic en el botón [Avanzado] en la parte inferior de la pestaña Crear.
  6. Asegúrese de que [Información de depuración:] esté configurado en [completo]
  7. Haga clic en [Aceptar] y vuelva a generar el proyecto ;-)

(el paso 6 genera los archivos .pdb, estos son los símbolos de depuración)


Propiedades del proyecto (luego seleccione su configuración de compilación)> Ficha Generar> Avanzado ...> Información de depuración (desplegable)

Establézcalo en 'todo' o 'solo pdb' y luego reconstrúyalo


Sé que llegué tarde, pero pensé que había hecho algo mal y seguí los pasos anteriores, luego me di cuenta de que había establecido la configuración de la solución en 'Lanzamiento' por error :)


Solo algo sencillo de probar, es posible que ya lo hayas probado. Haga clic derecho en el Explorador de soluciones en solución, haga clic en "solución limpia", esto elimina todos los archivos compilados y temporales asociados con una solución .

Realice una reconstrucción de la solución e intente depurar de nuevo.

También he tenido problemas con los puntos de interrupción de varios proyectos en una solución, algunos compilados como x86, otros como x64.


Solo verifica si tu solución está en modo de lanzamiento.


También tuve el mismo problema: reconstruí toda la solución (incluidos los proyectos referenciados) en x86 (o x64)

Aunque configuré todos mis proyectos en x86 desde Configuration Manager (Build-> ConfigManager), algunos de mis proyectos no estaban configurados en x86.

Tan solo para asegurarse de hacer clic con el botón derecho en proyecto-> propiedades-> Pestaña Depuración, verifique Configuración y Plataforma.





breakpoints