2010-11-17 21 views
10

Escribí una aplicación WPF en C# utilizando VS 2010. La aplicación funcionará bien en modo de depuración usando Visual Studio, pero cuando voy a ejecutar el .EXE desde la carpeta bin \ release, no pasa nada. No recibo ningún mensaje de error de Windows y no hay errores ni advertencias en VS. Intenté construir, reconstruir y limpiar la solución (en todos los órdenes posibles) sin suerte. Mi solución contiene 2 proyectos, los cuales usan .NET 4.0 Framework, y tengo .NET 4.0 instalado en mi PC. He probado XP y Win7 y aún nada.WPF La aplicación DotNET se ejecutará en modo de depuración, pero .EXE no se ejecutará

También me acabo de dar cuenta de que la salida de Debug cuando ejecuto la aplicación en modo de depuración dice: "No se puede encontrar o abrir el archivo PDB" después de cada .Dll se carga.

Estoy compilando en la carpeta Release cada vez, pero intenté cambiarlo a la carpeta de depuración y limpiar/reconstruir solo para ver si eso haría la diferencia, y no fue así, así que lo cambié de nuevo, lo probé de nuevo, y todavía nada.

¿Alguna idea?

+4

Interesante. ¿Has revisado el registro de eventos de la aplicación para ver si hay algo allí? –

+0

¿Se está ejecutando la aplicación en su lista de procesos o comenzó/finalizó? –

+0

Además, ¿ha obtenido una compilación sin errores cuando cambia al modo de lanzamiento? Cuando presione F5, se está ejecutando en modo Depuración, se compilará en bin \ Debug. Quizás una versión anterior está en bin \ Release que en realidad no hace nada. Intenta cambiar el menú desplegable para Liberar, luego compila con F6. –

Respuesta

2

Supongo que probó en una máquina que no tiene Visual Studio instalado, y tampoco ninguno de los componentes que está utilizando para el desarrollo.

Tiene una sola opción: iniciar la aplicación con un depurador en la máquina que causa problemas y verificar las excepciones allí. (use WinDBG por ejemplo - es liviano y fácil).

Esto parece un problema con las dependencias faltantes, pero podría ser algo más también.

Los laboratorios de depuración debe darle suficiente información sobre el uso de windbg para encontrar su problema:

También utilice esto:

+0

Intenté usar un depurador y después de que la aplicación falla, simplemente da un mensaje que dice "Sin fuente disponible". – user441603

+0

¿Pero capturó el mensaje de excepción? –

0

Voy a ir con una suposición de que:

  • O tienes alguna corrupción extraño en su instalación de .NET Framework
  • Hay algo de depuración/código de liberación específica utilizando #if DEBUG o tal que es sustancialmente diferente para causar problemas.
  • Aún no se ha compilado recientemente en la Versión (pruebe a cambiarlo a Versión antes de compilar su último código y asegúrese de no obtener ningún error).

Esas son las únicas cosas en las que puedo pensar de la cabeza.

+0

Tuve que instalar .NET v4.0 en la máquina XP en la que intenté ejecutarlo (que no tiene VS) y todavía no tengo nada, y no creo que tenga 2 versiones corruptas de .NET Framework. Estoy compilando en versión y obtengo 0 errores y 0 advertencias. – user441603

7

Aquí hay un par de ideas que vienen a la mente

  • Si se encuentra en una máquina x64, intente cambiar la aplicación de ser Cualquier CPU a x86. Este es el modo predeterminado de las aplicaciones en modo de depuración y es posible que un problema que se ejecute en x64 esté causando un problema en las compilaciones de versiones
  • Posibles los archivos binarios de la versión no están actualizados.Eliminar los binarios de la carpeta de lanzamiento, reconstruir y ejecutar las carreras recién generadas
  • Ejecutar la versión de lanzamiento en el depurador de Visual Studio y ver si él hasta accidentes
+0

Este no fue mi problema (esta vez), ¡pero sigue siendo información muy útil! ¡Gracias! – user441603

1

(JaredPar) respuesta se ve a la derecha (64), pero si no, haga clic derecho en el EXE y ejecute en modo administrador para ganar 7.

+0

http://msdn.microsoft.com/en-us/library/b8ttk8zy.aspx – halfevil

+0

Pruebe ese enlace también :) – halfevil

+0

¡Correr en modo Admin funcionó para mí! – Crispy

2

Tuve un problema muy similar.

Salida este ajuste en su entrada grupo de aplicaciones:

  • Vaya a Configuración avanzada.
  • Cambie 'Habilitar aplicaciones de 32 bits' a 'VERDADERO'.

¡Esto funcionó para mí!

0

Me encontré con un problema similar, me faltaba una carpeta personalizada en el modo de publicación al que me estaba refiriendo en el constructor. Agregar la carpeta a la versión solucionó el problema.

5

También estaba experimentando el problema anterior, sin embargo, ninguna de las otras soluciones funcionó para mí.

Mis registros de la aplicación en el Visor de sucesos indicaron los id. De evento 1018 y 1022. Esto parecía estar extrañamente relacionado con un dll ASP.NET 2.0 (extraño, ya que era un proyecto WPF en blanco solamente). Los registros contenían mensajes como este:

Windows no puede abrir el DLL contador extensible 64 bits ASP.NET_64_2.0.50727 en un entorno de 32 bits

Al final resultó ser resuelto cuando I inhabilitó mi antivirus. Había leído que esta resolución funcionaba para alguien con McAfee; y también funcionó para mi entorno, que tiene Avast.

+1

Gracias, añadimos temporalmente nuestra aplicación Wpf a las excepciones Avast en la computadora y funcionó. Ahora tenemos que encontrar la forma de no ser bloqueado de Avast. – Abyte0

Cuestiones relacionadas