Error CLR20r3 aplicacion no corre en otra pc

Iniciado por rigorvzla, 18 Diciembre 2017, 16:01 PM

0 Miembros y 4 Visitantes están viendo este tema.

rigorvzla

Hola amigos, ya podria decir que tengo una aplicacion, y al probarla en mi pc funciona de maravillas en modo debug y release  ejecutando el exe , pero cuando copie ambos (cada carpeta debug y release) para probarlos en otra computadora me dio este error


Firma con problemas:
  Nombre del evento de problema:    CLR20r3
  Firma del problema 01:    AIRH.exe
  Firma del problema 02:    1.0.0.0
  Firma del problema 03:    5a37d2b3
  Firma del problema 04:    System.Speech
  Firma del problema 05:    4.6.1590.0
  Firma del problema 06:    5787fe32
  Firma del problema 07:    4ae
  Firma del problema 08:    28
  Firma del problema 09:    System.ArgumentException
  Versión del sistema operativo:    6.1.7601.2.1.0.256.1
  Id. de configuración regional:    3082
  Información adicional 1:    0a9e
  Información adicional 2:    0a9e372d3b4ad19135b953a78882e789
  Información adicional 3:    0a9e
  Información adicional 4:    0a9e372d3b4ad19135b953a78882e789

Me podrian ayudar a interpretar eso y buscar solucion porfavor

Eleкtro

#1
Cita de: rigorvzla en 18 Diciembre 2017, 16:01 PMMe podrian ayudar a interpretar eso y buscar solucion porfavor

Es un error poco común, pero basicamente te está diciendo que algún miembro/método del ensamblado System.Speech.dll ha lanzando una excepción de tipo System.ArgumentException. Depura el código fuente en ese otro PC para intentar descubrir el motivo. Y asegúrate de que en ese Widnows 7 haya instalado una versión igual o superior de la versión .NET Framework objetivo de tu programa AIRH.

Lee aquí para posibles soluciones alternativas:

Saludos








rigorvzla

PERFECTO!!!! ya tengo una idea de donde comenzar a buscar  gracias elektro jeje muchas gracias, como pregunta extra como depuro el proyecto en el otro computador?

Eleкtro

#3
Cita de: rigorvzla en 20 Diciembre 2017, 21:35 PMcomo pregunta extra como depuro el proyecto en el otro computador?

Me refería a que instalases Visual Studio en ese otro PC (junto al código fuente de tu programa) para depurar la excepción que genera tu programa en (al parecer)tiempo de inicio. Si eso no fuese posible, entonces sencillamente puedes intentar controlar todas las excepciones de tu programa en el código fuente y generar un reporte detallado con el stacktrace para que se envíe automáticamente a "X" cuenta de correo (y con eso ya tendrías algo que poder depurar en tu PC), o también puedes tratar de hacer una depuración remota en condiciones suponiendo que en ese otro PC hayas distribuido el archivo de base de datos de información de depuración de tu programa ("AIRH.pdb")...



Ale, más cositas que leer sobre todas las cosas que acabo de mencionar :P:

Saludos








rigorvzla

ahora  que lo mencionas, se me crean varios archivos como lo que es. el .pdb, este sirve como reporte de debug? lo puedo leer ?

.exe.manifiest y .exe.config sirven para algo como para encontrar errores?

Eleкtro

#5
Cita de: rigorvzla en 21 Diciembre 2017, 13:17 PM
ahora  que lo mencionas, se me crean varios archivos como lo que es. el .pdb, este sirve como reporte de debug? lo puedo leer ?

Cita de: rigorvzla en 21 Diciembre 2017, 13:17 PM
.exe.manifiest y .exe.config sirven para algo como para encontrar errores?

El archivo.pdb no sirve para reportar nada, ni para encontrar errores, sino para depurar tu app. Si quieres saber que se guarda exactamente en ese archivo, lee el primer enlace de la MSDN que te mostré.

El reporte de errores lo harias por ti mismo desarrollando un algoritmo que leyese la excepción generada que hayas controlado (el objeto de tipo Exception), el contenido de la propiedad Exception.Message y Exception.StackTrace, y los demás datos de utilidad que quieras "reportar"... luego lo envias por email (desde el código fuente, desde .NET/C#, vaya), o haces lo que quieras con esa información obtenida.




No, para nada. En el archivo.config y archivo.manifest se almacena cierta información ( como la versión necesaria de las dependencias .dll de tu app ) y se puede especificar diversas propiedades para controlar ciertos aspectos de tu app, aquí tienes la documentación de todas esas propiedades y su propósito:


En el archivo .config también se guarda la configuración de tu programa (el valor de las propiedades específicas a nivel de aplicación), lo que estuviste preguntando aquí, las "settings":

Nota: las propiedades a nivel de usuario se almacenan en otro directorio (otro archivo.config), aunque por otro lado si lo deseas siempre puedes especificar dichas propiedades en el archivo.config que se genera junto al .exe en la misma carpeta para overridear el valor inicial por defecto de dichas propiedades.

Saludos








rigorvzla

Cita de: Eleкtro en 21 Diciembre 2017, 13:45 PM

Nota: las propiedades a nivel de usuario se almacenan en otro directorio (otro archivo.config), aunque por otro lado si lo deseas siempre puedes especificar dichas propiedades en el archivo.config que se genera junto al .exe en la misma carpeta para overridear el valor inicial por defecto de dichas propiedades.

Saludos
entendido y siempre me pregunte si era posible redirigir la configuracion que se guardaba en las settings por el ususario en otro lado que no fuera %appdata% lo revisare con detalle gracias por este dato . o anterior es mas complicado ya me las ingeniare para resolver ese asunto de busqueda de error

Eleкtro

#7
Cita de: rigorvzla en 21 Diciembre 2017, 15:14 PMsiempre me pregunte si era posible redirigir la configuracion que se guardaba en las settings por el ususario en otro lado que no fuera %appdata%

Si, es posible hacerlo, pero mejor ni lo intentes o te morirás del asco xD, requiere bastante esfuerzo para implementar varias funcionalidades.

Yo también siempre tuve esa misma duda en el pasado, y apenas existe información al respecto en Internet o en la MSDN (y en los libros absolutamente nada de nada), así que tuve que recurrir a una comunidad de gurús como StackOverflow, donde me ofrecieron la solución que puedes ver aquí:





...pero, si quieres mi opinión, y suponiendo que solo tengas la necesidad de manipular tipos de string, booleanos o numéricos en tus "settings" (no Bitmaps, Arrays, ni cualquier otra cosa que no sea un string, un boolean o un número), entonces te aconsejo que mejor inviertas el tiempo en desarrollar (o copiar y pegar) cualquier parseador de archivos INI, y así podrás guardar la configuración de tu programa en un simple archivo.ini en el mismo directorio que tu programa, y con el beneficio de que es un formato que cualquier usario con o sin experiencia informática puede manipular facilmente... y gracias a eso tu programa será "portable", ya que será suficiente con copiar el executable y el archivo.ini a un USB para hacerlo funcionar sin necesidad de instalación previa, pero bueno, esto ya es cuestión de gustos.

Saludos.








rigorvzla

#8
me gusto eso del ini lo tendre en mente para un futuro por ahora, solo debo buscar la forma de que me abra este programa en cualquier otra pc s in problemas , gracias por la informacion.

EDITO: viendo otros modulos de la aplicacion que cree resulta que tambien me dan error de abrir y este es distinto al primero.

Firma con problemas:
  Nombre del evento de problema: CLR20r3
  Firma del problema 01: VentanaAyuda.exe
  Firma del problema 02: 1.0.0.0
  Firma del problema 03: 5a37fa4d
  Firma del problema 04: PresentationFramework
  Firma del problema 05: 4.7.2558.0
  Firma del problema 06: 59d41ae6
  Firma del problema 07: 169b
  Firma del problema 08: 8f
  Firma del problema 09: System.InvalidOperationException
  Versión del sistema operativo: 6.1.7601.2.1.0.256.1
  Id. de configuración regional: 3082
  Información adicional 1: 0a9e
  Información adicional 2: 0a9e372d3b4ad19135b953a78882e789
  Información adicional 3: 0a9e
  Información adicional 4: 0a9e372d3b4ad19135b953a78882e789


Nota: en la otra pc instale el ultimo
netframework 4.7.1
SpeechPlatformRuntime x86
Microsoft Visual C++ Redistribuible 2013, 2015, 2008

esto es lo que mas relevancia creo yo que debo tener, lo  ultimo seria instalar el visual studios 2015 para abrir alla el proyecto.

lo otro fue que lei user acount control, muy por encima esto tendra que ver? ayudenme a descartar y lograr q corra en otra pc, ya que podria decir que esta "lista". (sacando que siempre salen cosas por pulir cada vez que reviso)

rigorvzla

En efecto como dijo Elektro instale el visual studios en la otra pc y me genero el error que ahora puedo ver y este es el evento que me produjo uno de los modulos del programa donde en teoria es una ventana de "Aviso" 

CitarNo se controló System.InvalidOperationException
  HResult=-2146233079
  Message=El nombre 'window' no se encuentra en el ámbito de nombres de 'Ventana.MainWindow'.
  Source=PresentationFramework
  StackTrace:
       en System.Windows.Media.Animation.Storyboard.ResolveTargetName(String targetName, INameScope nameScope, DependencyObject element)
       en System.Windows.Media.Animation.Storyboard.ClockTreeWalkRecursive(Clock currentClock, DependencyObject containingObject, INameScope nameScope, DependencyObject parentObject, String parentObjectName, PropertyPath parentPropertyPath, HandoffBehavior handoffBehavior, HybridDictionary clockMappings, Int64 layer)
       en System.Windows.Media.Animation.Storyboard.ClockTreeWalkRecursive(Clock currentClock, DependencyObject containingObject, INameScope nameScope, DependencyObject parentObject, String parentObjectName, PropertyPath parentPropertyPath, HandoffBehavior handoffBehavior, HybridDictionary clockMappings, Int64 layer)
       en System.Windows.Media.Animation.Storyboard.BeginCommon(DependencyObject containingObject, INameScope nameScope, HandoffBehavior handoffBehavior, Boolean isControllable, Int64 layer)
       en System.Windows.Media.Animation.BeginStoryboard.Begin(DependencyObject targetObject, INameScope nameScope, Int64 layer)
       en System.Windows.Media.Animation.BeginStoryboard.Invoke(FrameworkElement fe)
       en System.Windows.EventTrigger.EventTriggerSourceListener.Handler(Object sender, RoutedEventArgs e)
       en System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
       en System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
       en System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
       en System.Windows.UIElement.RaiseEvent(RoutedEventArgs e)
       en System.Windows.BroadcastEventHelper.BroadcastEvent(DependencyObject root, RoutedEvent routedEvent)
       en System.Windows.BroadcastEventHelper.BroadcastLoadedEvent(Object root)
       en MS.Internal.LoadedOrUnloadedOperation.DoWork()
       en System.Windows.Media.MediaContext.FireLoadedPendingCallbacks()
       en System.Windows.Media.MediaContext.FireInvokeOnRenderCallbacks()
       en System.Windows.Media.MediaContext.RenderMessageHandlerCore(Object resizedCompositionTarget)
       en System.Windows.Media.MediaContext.RenderMessageHandler(Object resizedCompositionTarget)
       en System.Windows.Media.MediaContext.Resize(ICompositionTarget resizedCompositionTarget)
       en System.Windows.Interop.HwndTarget.OnResize()
       en System.Windows.Interop.HwndTarget.HandleMessage(WindowMessage msg, IntPtr wparam, IntPtr lparam)
       en System.Windows.Interop.HwndSource.HwndTargetFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
       en MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
       en MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
       en System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
       en System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
       en System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
       en MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
       en MS.Win32.UnsafeNativeMethods.ShowWindow(HandleRef hWnd, Int32 nCmdShow)
       en System.Windows.Window.ShowHelper(Object booleanBox)
       en System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
       en System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
       en System.Windows.Threading.DispatcherOperation.InvokeImpl()
       en System.Windows.Threading.DispatcherOperation.InvokeInSecurityContext(Object state)
       en System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
       en System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
       en System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
       en MS.Internal.CulturePreservingExecutionContext.Run(CulturePreservingExecutionContext executionContext, ContextCallback callback, Object state)
       en System.Windows.Threading.DispatcherOperation.Invoke()
       en System.Windows.Threading.Dispatcher.ProcessQueue()
       en System.Windows.Threading.Dispatcher.WndProcHook(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
       en MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
       en MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
       en System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
       en System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
       en System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
       en MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
       en MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
       en System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
       en System.Windows.Threading.Dispatcher.PushFrame(DispatcherFrame frame)
       en System.Windows.Application.RunDispatcher(Object ignore)
       en System.Windows.Application.RunInternal(Window window)
       en System.Windows.Application.Run(Window window)
       en System.Windows.Application.Run()
       en Ventana.App.Main() en C:\Users\Test\Desktop\Ventana Ayuda\Ventana\obj\Debug\App.g.cs:línea 0
       en System.AppDomain._nExecuteAssembly(RuntimeAssembly assembly, String[] args)
       en System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)
       en Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
       en System.Threading.ThreadHelper.ThreadStart_Context(Object state)
       en System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
       en System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
       en System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
       en System.Threading.ThreadHelper.ThreadStart()
  InnerException:



y este es el oto evento que se genera en el programa principal

CitarNo se controló System.ArgumentException
  HResult=-2147024809
  Message='name' no puede ser una cadena vacía.
Nombre del parámetro: name
  ParamName=name
  Source=System.Speech
  StackTrace:
       en System.Speech.Internal.Helpers.ThrowIfEmptyOrNull(String s, String paramName)
       en System.Speech.Synthesis.SpeechSynthesizer.SelectVoice(String name)
       en AIRH.MainWindow.Window_Loaded(Object sender, RoutedEventArgs e) en C:\Users\Test\Desktop\AIRH\AIRH\MainWindow.xaml.cs:línea 74
       en System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
       en System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
       en System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
       en System.Windows.UIElement.RaiseEvent(RoutedEventArgs e)
       en System.Windows.BroadcastEventHelper.BroadcastEvent(DependencyObject root, RoutedEvent routedEvent)
       en System.Windows.BroadcastEventHelper.BroadcastLoadedEvent(Object root)
       en MS.Internal.LoadedOrUnloadedOperation.DoWork()
       en System.Windows.Media.MediaContext.FireLoadedPendingCallbacks()
       en System.Windows.Media.MediaContext.FireInvokeOnRenderCallbacks()
       en System.Windows.Media.MediaContext.RenderMessageHandlerCore(Object resizedCompositionTarget)
       en System.Windows.Media.MediaContext.RenderMessageHandler(Object resizedCompositionTarget)
       en System.Windows.Media.MediaContext.Resize(ICompositionTarget resizedCompositionTarget)
       en System.Windows.Interop.HwndTarget.OnResize()
       en System.Windows.Interop.HwndTarget.HandleMessage(WindowMessage msg, IntPtr wparam, IntPtr lparam)
       en System.Windows.Interop.HwndSource.HwndTargetFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
       en MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
       en MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
       en System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
       en System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
       en System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
       en MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
       en MS.Win32.UnsafeNativeMethods.ShowWindow(HandleRef hWnd, Int32 nCmdShow)
       en System.Windows.Window.ShowHelper(Object booleanBox)
       en System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
       en System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
       en System.Windows.Threading.DispatcherOperation.InvokeImpl()
       en System.Windows.Threading.DispatcherOperation.InvokeInSecurityContext(Object state)
       en System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
       en System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
       en System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
       en MS.Internal.CulturePreservingExecutionContext.Run(CulturePreservingExecutionContext executionContext, ContextCallback callback, Object state)
       en System.Windows.Threading.DispatcherOperation.Invoke()
       en System.Windows.Threading.Dispatcher.ProcessQueue()
       en System.Windows.Threading.Dispatcher.WndProcHook(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
       en MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
       en MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
       en System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
       en System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
       en System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
       en MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
       en MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
       en System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
       en System.Windows.Threading.Dispatcher.PushFrame(DispatcherFrame frame)
       en System.Windows.Application.RunDispatcher(Object ignore)
       en System.Windows.Application.RunInternal(Window window)
       en System.Windows.Application.Run(Window window)
       en System.Windows.Application.Run()
       en AIRH.App.Main() en C:\Users\Test\Desktop\AIRH\AIRH\obj\Debug\App.g.cs:línea 0
       en System.AppDomain._nExecuteAssembly(RuntimeAssembly assembly, String[] args)
       en System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)
       en Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
       en System.Threading.ThreadHelper.ThreadStart_Context(Object state)
       en System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
       en System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
       en System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
       en System.Threading.ThreadHelper.ThreadStart()
  InnerException:

aqui ya me mostro y puedo ver , cosa donde me pondre ya a trabajar en ello, espero opiniones y posibles soluciones gracias de antemano.