¿Cómo remedio el “El punto de interrupción no será golpeado actualmente”. No se han cargado símbolos para este documento. ¿Advertencia?

Aplicación de escritorio C # en edición express. Funcionó entonces no funcionó 5 segundos después.

Intenté lo siguiente.

  • Asegúrese de que la configuración de depuración, el indicador de depuración y la información completa de depuración estén configurados en todos los ensamblados.
  • Elimine todas las carpetas bin y obj y todas las DLL relacionadas con el proyecto de todo mi equipo.
  • Recrea proyectos que causan 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. Ambos se refieren al ensamblaje del que trato 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 vuelva a revisar esta pregunta, que los símbolos no se cargan hasta que se cargue 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 utiliza en una función en su ensamblaje principal, los símbolos no se cargarán (y mostrará el punto de interrupción como no golpeado) hasta que se llame a esa función.

Comience a depurar, tan pronto como llegue a un punto de interrupción o use Debug > Break All , use Debug > Windows > Modules . Verá una lista de todos los ensamblados que están cargados en el proceso. Busque el que desea obtener la información de depuración. Haga clic con el botón derecho y seleccione Información de carga del símbolo. Obtendrá un diálogo que enumera todos los directorios donde buscó el archivo .pdb para el ensamblado. Verifique esa lista contra la ubicación .pdb real. Asegúrate de que no encuentre uno viejo.

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

Primero intente reconstruir su proyecto haciendo clic con el botón derecho del mouse sobre 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ó, comprueba esto:

  1. Haga clic derecho sobre su proyecto
  2. seleccione [Propiedades]
  3. selecciona la pestaña [Build]
  4. Asegúrese de que [Definir constante DEBUG] y [Definir constante de TRACE] estén marcados
  5. Haga clic en el botón [Avanzado] en la parte inferior del tabulador de comstackción
  6. Asegúrese de que [Info 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)

Simplemente algo simple de probar, puede que ya lo hayas probado. Haga clic con el botón derecho en la solución en el explorador de soluciones, haga clic en “limpiar solución”, esto borra todos los archivos comstackdos y temporales asociados con una solución .

Haga 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 comstackdos como x86, algunos como x64.

Deshabilite la opción “Just My Code” en la configuración de Debug / General.

Cruza la publicación de esta revisión de Hans K que encontré en el hilo similar >> AQUÍ << :

Haga clic derecho en la solución -> Propiedades

Consulte Propiedades comunes -> Proyecto de inicio

Seleccione varios proyectos de inicio

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

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

Incluso con “Debug” seleccionado en el menú desplegable:

enter image description here

Y en el proyecto Propiedades> Construir:

enter image description here

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

enter image description here

enter image description here

Luego configuré eso en “Debug” y comenzó a generar el archivo .pdb . PERO necesito copiar manualmente el PDB y el DLL y poner en la carpeta que VS estaba buscando (aquí es donde la respuesta seleccionada me ayudó):

enter image description here

Pude solucionar el error simplemente configurando la opción en la opción ‘Adjuntar al proceso’ para ‘Determinar automáticamente el tipo de código para depurar’ como se muestra en la captura de pantalla adjunta.

Simplemente siga los pasos a continuación:

  • Ir a depurar desde la barra de menú
  • Haga clic en Adjuntar para procesar
  • Cerca de la opción Adjuntar a , haga clic en el botón Seleccionar
  • Aparecerá la ventana Seleccionar tipo de código
  • Ahora seleccione la opción Determinar automáticamente el tipo de código para depurar y haga clic en el botón Aceptar.

Error de depuración solucionado

Debug > Windows > Los Modules para ver qué módulos se estaban cargando me pusieron en la dirección correcta.

En mi caso, IIS Express parecía estar cargando una DLL diferente de los archivos temporales de ASP.NET.

¿La solución?

  1. Busque C:\Users\\AppData\Local\Temp\Temporary ASP.NET Files\vs
  2. ¡Elimina todo en este directorio!

A veces, a pesar de que le da este error, el breakpoint aún recibe un golpe, por lo que simplemente ignore el error. Esto sucede bastante a menudo en las Views de una MVC web app .

Compruebe si su archivo .pbd falta en su carpeta bin / Debug. Si es así, vaya a “Propiedades” de su proyecto, seleccione “Crear” y luego “Avanzado” en la parte inferior. Elija “completo” en “Depurar información” en la nueva ventana que apareció. Este fue mi problema y lo resolvió para mí.

Mostrando dónde encontrar la configuración

En mi caso, “Código de Optimize” fue marcado en las propiedades de mi proyecto. Esto hizo que VS viera mi ensamblaje como “no es mi código” y, a su vez, no cargó símbolos para él.

La solución fue desmarcar esto. Ubicación de la casilla de verificación Optimizar código

Simplemente compruebe si su solución está en modo de lanzamiento.

Intenta ejecutar Visual Studio como administrador dentro de Windows.

Debe habilitar “Generar información de depuración” en la configuración del comstackdor

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

La opción “Iniciar la depuración, Depurar + Módulos de Windows +” no existe en la edición de Microsoft Visual Studio Express 2013.

Al desmarcar “Usar modo de compatibilidad administrada” en Opciones de herramientas, la depuración corrige esto.

En mi caso estoy tratando de depurar en modo relase. Una vez que lo cambio al modo de depuración. Esta funcionando

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

Incluso la publicación de la misma solución no resolvió el problema.

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

Todo lo que hice fue hacer un cambio deliberado en el código y publicar la solución. Luego revirtí el cambio y publiqué de nuevo.

Voila [archivos PDB librados de espíritus malignos] … No es una resolución inteligente, pero esto funcionó …: – |

En lugar de hacer todas estas cosas solo

Cerrar y reabrir

la solución solucionará el problema

Ninguna de esas respuestas resolvió mi problema. Intenté otra cosa porque el proyecto con la parada no era en realidad el proyecto cargado. Encontré que Hans Passant escribió que el archivo .dll donde quiero detener el depurador y los archivos .pdb asociados se copiaron cerca del archivo .exe. Esos archivos tienen una fecha más antigua, así que pensé que no se actualizaron en el tiempo de ejecución. Los borré manualmente, Visual Studio creó otro par Y coloqué este nuevo par cerca del .exe. ¡Ahora los breakpoins funcionan!

Tal vez Visual Studio no puede copiar y REEMPLAZAR los archivos existentes (.dll y .pdb) cerca del .exe ya que hay otro allí. Entonces, si borré manualmente, entonces VS podría crear uno nuevo cerca de .exe.

Creo que otro cambio (cheques, etc.) desencadenó algo y Visual Studio copió y reemplazó el dll y el pdb de la carpeta del proyecto a la carpeta cercana al 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 el stop.

Tal vez esta respuesta para ayudar a alguien!

Cosas que debe verificar para ser claro: asegúrese de que la configuración esté configurada en ‘Depurar’ y no ‘Liberar’. Puede depurar el proyecto de inicio en modo ‘Versión’, pero no en una biblioteca de clases referenciada.

Webapplications (IIS Express) solamente:

  • Haga clic derecho en IIS Express Tray y cierre el IIS.
  • Solución limpia

Bandeja IIS

Estaba integrando una aplicación C # con una biblioteca estática usando VS10, que soy nuevo. Escribí un código administrado dll para interactuar con ellos. Podría establecer puntos de interrupción en todas partes menos la lib estática. Recibí el mensaje descrito anteriormente: no se han cargado símbolos para este documento. Intenté muchas de las sugerencias anteriores. Pude ver que los símbolos no se estaban cargando. Finalmente noté una checkbox Depuración de configuración, habilitar la depuración del código no administrado. Eso me permitió establecer puntos de interrupción en las funciones de lib estáticas.

He leído cuidadosamente todas las respuestas anteriores, pero ninguna de ellas resolvió mi problema.

En mi caso, estaba comstackndo una biblioteca de clases (DLL). Parece que no hay módulos cargados en Depurar -> Módulos, por lo que ni siquiera podía cargar los símbolos manualmente.

Mi solución fue agregar esta línea a mi código:

 System.Diagnostics.Debugger.Launch(); 

Una vez que se alcanza este código, se desencadena una excepción y .NET Framework muestra un cuadro de diálogo preguntando qué Visual Studio (es decir, nueva instancia de VS 2008, nueva instancia de VS 2013, etc.) que desea utilizar para depurar el progtwig. Puede elegir la instancia existente de VS con su proyecto cargado. Esto adjuntará el proceso a su sesión de VS y cargará todos los símbolos, y ahora puede depurar su proyecto.

Por supuesto, la comstackción debe hacerse utilizando la configuración de depuración, no la versión.

Propiedades del proyecto (luego seleccione su configuración de comstackción)> Pestaña Comstackción> Avanzado …> Información de depuración (menú desplegable)

Establezca ‘todo’ o ‘pdb-only’ y luego reconstruya

Para una aplicación ASP.Net, verifique las propiedades del sitio, pestaña ASP.NET. Asegúrese de que esté seleccionada la versión correcta de ASP.NET.

También tuve el mismo problema con lo que reconstruí toda la solución (incluidos los proyectos refereced) en x86 (o x64)

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

Por lo tanto, para asegurarse de hacer clic derecho en project-> properties-> Debug Tab, verifique Configuration and Platform.

Esto me llevó un tiempo probar 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 fuente coincidan exactamente con la versión original”

Sé que llevo años de retraso, pero pensé que había hecho algo mal y seguí los pasos anteriores, entonces me di cuenta de que había configurado la configuración de la solución en ‘Liberar’ por error 🙂

Haga clic derecho en Proyecto -> Propiedades -> Ir a la pestaña Construir -> Desmarcar código de Optimize . Hazlo para cualquier proyecto en tu solución