c# - microsoft - visual studio net
El módulo especificado no se pudo encontrar 0x8007007E (2)
Dentro del constructor de un formulario, cuando paso por mi código, se llama a un método declarado en el mismo formulario. Antes de poder entrar en el método, obtengo una excepción System.IO.FileNotFoundException con el mensaje "No se pudo encontrar el módulo especificado. (Excepción de HRESULT: 0x8007007E)". El método de miembro que trato de ingresar se declara inseguro porque se trata de código C ++ no administrado, pero como dije, nunca puedo entrar en el método de todos modos.
Ya que suena como un problema de dependencia de DLL, ejecuté Dependency Walker. El caminante de dependencias solo muestra problemas con MPR.DLL bajo SHLWAPI.DLL. El método del problema es WNetRestoreConnectionA que nunca llamo. La pregunta frecuente sobre el caminante de dependencias sugiere que esto no es un problema http://dependencywalker.com/faq.html . Además, esto no es una aplicación web ni nada. Lamentablemente estoy atascado con VS2005.
¿Cuáles son algunas de las posibles razones para que ocurra este problema? ¿Alguna idea sobre lo que podría faltar o cómo puedo solucionar este problema?
¿Está ejecutando el caminante de dependencias en modo de perfil, o solo análisis estático? Creo que el modo de perfil es lo que necesitas para esto. Pero hay mejores soluciones que creo.
Puedes probar SysInternals ProcMon . Esto le permitirá ver qué archivo está intentando cargar al menos, y desde allí podrá descubrir cuál es el problema.
Mi consejo sería encenderlo y luego apagar el registro. Llegue al punto en el que está a punto de producirse la excepción, vuelva a habilitar el registro, pase por el depurador para que se genere el error y, a continuación, vuelva a desactivar el registro. Esto te dejará con solo una pequeña cantidad de registro para tratar, de lo contrario puede ser bastante difícil de manejar con bastante rapidez.
El error se está produciendo cuando .NET Runtime JIT es el método que está a punto de ingresar, porque no pudo encontrar uno de los tipos utilizados por el método.
¿Qué hace exactamente el método en el que no puedes entrar, y qué tipos / métodos usa?