working validate not net exist ejemplo c# .net file-not-found

not - validate file exist c#



Evento de aplicaciĆ³n de C#windows: CLR20r3 al inicio de la aplicaciĆ³n (5)

OK, entonces creé la aplicación ac # y la instalé en mi caja de prueba. Mi aplicación funciona perfectamente en mi caja de desarrollo, pero cuando la instalo en una máquina diferente, se bloquea en Main (). Obtengo el EventType: CLR20r3

aquí está el mensaje del evento

Problem signature: Problem Event Name: CLR20r3 Problem Signature 01: logfileviewer.exe Problem Signature 02: 1.0.0.0 Problem Signature 03: 4f356c9c Problem Signature 04: LogFileViewer Problem Signature 05: 1.0.0.0 Problem Signature 06: 4f356c9c Problem Signature 07: 94 Problem Signature 08: 44 Problem Signature 09: System.IO.FileNotFoundException OS Version: 6.1.7601.2.1.0.256.1 Locale ID: 1033 Additional Information 1: 0a9e Additional Information 2: 0a9e372d3b4ad19135b953a78882e789 Additional Information 3: 0a9e Additional Information 4: 0a9e372d3b4ad19135b953a78882e789

Utilicé los detalles y busqué el código de error en el Desensamblador IL y la cámara de nuevo con lo siguiente ...

Method #5 (06000094) ------------------------------------------------------- MethodName: .ctor (06000094) Flags : [Public] [HideBySig] [ReuseSlot] [SpecialName] [RTSpecialName] [.ctor] (00001886) RVA : 0x000081d0 ImplFlags : [IL] [Managed] (00000000) CallCnvntn: [DEFAULT] hasThis ReturnType: Void No arguments.

.NET 4.0 ha sido desinstalado y reinstalado en el sistema y no cambió nada. He buscado en toda la red y todos los que tienen el mismo problema no parecen tener una solución. Ahora he pasado un día y medio en este problema. No me gustaría perder mi fecha límite para no poder iniciar la aplicación.

Este es el único código en mi principal ()

static void Main() { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Application.Run(new frmMain()); }

Aquí están los detalles del Visor de Eventos.

Application: LogFileViewer.exe Framework Version: v4.0.30319 Description: The process was terminated due to an unhandled exception. Exception Info: System.IO.FileNotFoundException Stack: at LogFileViewer.frmMain.InitializeComponent() at LogFileViewer.frmMain..ctor() at LogFileViewer.Program.Main()

EventData

Application: LogFileViewer.exe Framework Version: v4.0.30319 Description: The process was terminated due to an unhandled exception. Exception Info: System.IO.FileNotFoundException Stack: at LogFileViewer.frmMain.InitializeComponent() at LogFileViewer.frmMain..ctor() at LogFileViewer.Program.Main()

No estoy seguro de cómo el diseñador puede tener una excepción FileNotFound. Estoy usando DotNetBar.dll y lo estoy haciendo referencia fuera del directorio de instalación, por lo que debería ser bueno. Puedo publicar mi diseñador si lo desea, pero hay bastante. ¿Alguien tiene alguna idea?


.NET tiene dos CLRs 2.0 y 4.0. CLR 2.0 funciona hasta .NET framework 3.5. CLR 4.0 funciona desde .NET 4.0 en adelante. Es posible que su solución esté utilizando un CLR diferente al de sus ensamblajes de referencia. En su entorno de desarrollo local, es posible que tenga ambos CLR y, por lo tanto, no enfrentó ningún problema. Sin embargo, cuando se mudó a los entornos de implementación, es posible que solo tengan un CLR único y se produjo este error.


Encontré el mismo problema cuando construí una aplicación en una caja de Windows 7 que previamente se había mantenido en una máquina XP.

El programa se ejecutó bien cuando se creó para la depuración, pero falló con este error cuando se creó para la versión. Encontré la respuesta en la página de propiedades del proyecto. Vaya a la pestaña "Crear" e intente cambiar el objetivo de la plataforma de "Cualquier CPU" a "x86".


He estado luchando contra esto toda la mañana y ahora lo resolví y por qué sucedió. Publicar con la esperanza de que ayude a otros.

Instalé Krypton.Toolkit, que agregó las herramientas a la caja de herramientas de Visual Studio automáticamente. Luego agregué las herramientas al diseñador, que automáticamente agregó la dll a las referencias del proyecto, sin embargo, el kit de herramientas se marcó como CopyLocal = false

Construí un instalador, usando todos los archivos DLL en la carpeta de compilación de lanzamiento (por supuesto, el archivo DLL anterior no estaba allí).

Configurando copylocal = true, luego reconstruyendo el instalador, todo funcionó bien.


He visto este mismo problema cuando mi aplicación dependía de un ensamblaje referenciado que no estaba presente en la máquina de implementación. No estoy seguro de qué quiere decir con "referenciar a DotNetBar fuera del directorio de instalación"; asegúrese de que esté establecido en CopyLocal=true en su proyecto, o que exista en la misma ruta completa tanto en su máquina de desarrollo como en su máquina de producción.


Para resolver el conjunto de problemas CLR20r3 - Local User Policy / Computer Configuration / Windows Settings / Security Settings / Local Policies / Security Options - System cryptography : use algoritmos criptográficos compatibles con FIPS 140, incluido el cifrado, hash y firma - Deshabilitar