Visor de registro de enlaces de ensamblados (Fuslogvw.exe)

El Visor de registro de enlaces de ensamblados es una herramienta que muestra los detalles de los enlaces de ensamblado. Esta información ayuda a diagnosticar la causa por la que .NET Framework no puede encontrar un ensamblado en tiempo de ejecución. Normalmente, estos errores se deben a que el ensamblado se implementa en una ubicación incorrecta o a que los números de versiones o referencias culturales no coinciden. El error de Common Language Runtime al localizar un ensamblado se muestra generalmente, como TypeLoadException en la aplicación.

Para ver el contenido del registro de enlaces de ensamblados

  • Ejecute Fuslogvw.exe en la línea de comandos.

El visor muestra una entrada para cada enlace de ensamblado con errores. Para cada error, el visor describe la aplicación en la que se inició el enlace; el ensamblado para el que se realiza el enlace, incluidos el nombre, la versión, la referencia cultural y la clave pública; así como la fecha y la hora del error.

Para cambiar la vista de la ubicación del registro

  1. Seleccione el botón de opción Predeterminado para ver los errores de enlace de todos los tipos de aplicaciones. De forma predeterminada, las entradas del registro se almacenan por directorios de usuario en la caché wininet del disco.

  2. Seleccione el botón de opción Custom para ver los errores de enlaces en el directorio que especifique. Debe especificar la ubicación personalizada donde desea que el motor en tiempo de ejecución almacene los registros mediante el establecimiento de la ubicación de registro personalizada (en el cuadro de diálogo Configuración de registro) en un nombre de directorio válido. Este directorio debe estar limpio y sólo debe contener los archivos que genere el motor en tiempo de ejecución. Si contiene un ejecutable que genere un error que se vaya a registrar, el error no se registrará, porque la herramienta intenta crear un directorio con el mismo nombre que el ejecutable. Además, los intentos de ejecutar archivos ejecutables desde la ubicación del registro producirán un error.

    Nota

    Es preferible utilizar la ubicación de enlace predeterminada, en lugar de la ubicación de enlace personalizada. El motor en tiempo de ejecución almacena la ubicación de enlace predeterminada en la caché de wininet que, por consiguiente, se limpia automáticamente. Si se especifica una ubicación de enlace personalizada, se es responsable de efectuar la limpieza.

Para ver los detalles de un error específico

  1. Seleccione el nombre de la aplicación de la entrada que desee en el visor.

  2. Haga clic en el botón View Log. Otra posibilidad es hacer doble clic en la entrada seleccionada.

    La herramienta muestra los siguientes detalles sobre el error encontrado en el enlace seleccionado:

    • El motivo específico del error del enlace, como "Archivo no encontrado" o "No coinciden las versiones".

    • Información sobre la aplicación que inició el enlace, incluidos el nombre y el directorio raíz de la aplicación (AppBase) y una descripción de la ruta de acceso de búsqueda privada, si existe.

    • La identidad del ensamblado que busca la herramienta.

    • Una descripción de las directivas de versión de aplicaciones, editor o administrador aplicadas.

    • Si se ha encontrado el ensamblado en la caché de ensamblados global.

    • Una lista de direcciones URL de búsqueda.

En el siguiente ejemplo de entrada del registro se muestra información detallada sobre un enlace de ensamblado con errores.

** Assembly Binder Log Entry (3/5/2002 @ 12:54:20 PM) **

The operation failed.
Bind result: hr = 0x80070002. The system cannot find the file specified.

Assembly manager loaded from:  C:\WINNT\Microsoft.NET\Framework\v1.0.3705\fusion.dll
Running under executable  C:\Program Files\Microsoft.NET\FrameworkSDK\Samples\Tutorials\resourcesandlocalization\graphic\cs\graphicfailtest.exe
--- A detailed error log follows. 

=== Pre-bind state information ===
LOG: DisplayName = graphicfailtest.resources, Version=0.0.0.0, Culture=en-US, PublicKeyToken=null
 (Fully-specified)
LOG: Appbase = C:\Program Files\Microsoft.NET\FrameworkSDK\Samples\Tutorials\resourcesandlocalization\graphic\cs\
LOG: Initial PrivatePath = NULL
LOG: Dynamic Base = NULL
LOG: Cache Base = NULL
LOG: AppName = NULL
Calling assembly : graphicfailtest, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null.
===

LOG: Processing DEVPATH.
LOG: DEVPATH is not set. Falling through to regular bind.
LOG: Policy not being applied to reference at this time (private, custom, partial, or location-based assembly bind).
LOG: Post-policy reference: graphicfailtest.resources, Version=0.0.0.0, Culture=en-US, PublicKeyToken=null
LOG: Attempting download of new URL file:///C:/Program Files/Microsoft.NET/FrameworkSDK/Samples/Tutorials/resourcesandlocalization/graphic/cs/en-US/graphicfailtest.resources.DLL.
LOG: Attempting download of new URL file:///C:/Program Files/Microsoft.NET/FrameworkSDK/Samples/Tutorials/resourcesandlocalization/graphic/cs/en-US/graphicfailtest.resources/graphicfailtest.resources.DLL.
LOG: Attempting download of new URL file:///C:/Program Files/Microsoft.NET/FrameworkSDK/Samples/Tutorials/resourcesandlocalization/graphic/cs/en-US/graphicfailtest.resources.EXE.
LOG: Attempting download of new URL file:///C:/Program Files/Microsoft.NET/FrameworkSDK/Samples/Tutorials/resourcesandlocalization/graphic/cs/en-US/graphicfailtest.resources/graphicfailtest.resources.EXE.
LOG: All probing URLs attempted and failed.

Para eliminar una entrada del registro

  1. Seleccione la entrada en el visor.

  2. Haga clic en el botón Delete Entry.

Para eliminar todas las entradas del registro

  • Haga clic en el botón Delete All.

Para actualizar la interfaz de usuario

  • Haga clic en el botón Refresh. Mientras se ejecuta, el visor no detecta automáticamente las entradas nuevas del registro. Por tanto, deberá utilizar el botón Refresh para mostrarlas.

Para cambiar la configuración del registro

  • Haga clic en el botón Configuración para abrir el cuadro de diálogo Configuración de registro.

Para ver el cuadro de diálogo Acerca de

  • Haga clic en el botón Acerca de.

El cuadro de diálogo Configuración de registro

Puede utilizar el cuadro de diálogo Configuración de registro para realizar las siguientes acciones.

Para deshabilitar el registro

  • Seleccione el botón de opción Registro deshabilitado. Tenga en cuenta que esta opción está seleccionada de forma predeterminada.

Para registrar enlaces de ensamblado en excepciones

  • Seleccione el botón de opción Registro en texto de excepción.

    Vea la nota Importante referente a los ensamblados que se cargan como neutrales con respecto al dominio.

Para registrar los errores de enlace de ensamblado

  • Seleccione el botón de opción Registrar errores de enlace en disco.

    Vea la nota Importante referente a los ensamblados que se cargan como neutrales con respecto al dominio.

Para registrar todos los enlaces de ensamblado

  • Seleccione el botón de opción Registrar todos los enlaces en disco.

    Vea la nota Importante referente a los ensamblados que se cargan como neutrales con respecto al dominio.

NotaImportante

Cuando se carga un ensamblado como neutral con respecto al dominio, por ejemplo estableciendo el valor de la propiedad LoaderOptimization en System.LoaderOptimization.MultiDomain o System.LoaderOptimization.MultiDomainHost, la activación del registro puede originar pérdidas de memoria en algunos casos. Esto puede suceder si se realiza una entrada de registro al cargar un módulo como neutral con respecto al dominio en un dominio de aplicación y, posteriormente, se descarga el dominio de aplicación. Puede que no se libere la entrada de registro hasta que finalice el proceso. Algunos depuradores activan automáticamente el registro.

Para habilitar una ruta de acceso de registro personalizada

  1. Seleccione el botón de opción Habilitar ruta de acceso de registro personalizada.

  2. Escriba la ruta de acceso en el cuadro de texto Ruta de acceso de registro personalizada.

Nota

Visor de registro de enlaces de ensamblados (Fuslogvw.exe) utiliza la caché de Internet Explorer (IE) para almacenar el registro de enlaces. Debido al daño ocasional en la caché de IE, Visor de registro de enlaces de ensamblados (Fuslogvw.exe) a veces puede impedir que se muestren los nuevos registros de enlaces en la ventana de vista. Como resultado de este daño, la infraestructura de enlaces (fusión) de .NET no puede escribir o leer del registro de enlaces. (No aparece este problema si utiliza una ruta de acceso del registro personalizada.) Para corregir el daño y permitir la fusión para mostrar de nuevo los registros de enlaces, borre la caché de IE eliminando los archivos temporales de Internet en el cuadro de diálogo Opciones de Internet de Internet Explorer.

Si la aplicación no administrada aloja Common Language Runtime mediante la implementación de las interfaces IHostAssemblyManager e IHostAssemblyStore, las entradas de registro no pueden almacenarse en la caché de wininet. Si desea ver las entradas de registro para los host personalizados que implementan estas interfaces, debe especificar otra ruta de acceso de registro.

Vea también

Referencia

Herramientas de .NET Framework
TypeLoadException Class
Símbolo del sistema de SDK

Conceptos

Caché de ensamblados global
Cómo el motor en tiempo de ejecución ubica ensamblados