Cómo: utilice el registro de actividad
VSPackages puede escribir mensajes en el registro de actividad. Esta característica es especialmente útil para depurar VSPackages en entornos comercial.
Sugerencia
Se activa el registro de actividad siempre.Visual Studio conserva un búfer acumulado de las cientos entradas pasan así como de las diez primeras entradas, que tienen información de configuración general.
Para escribir una entrada en el registro de actividad
inserte este código en el método de Initialize o en cualquier otro método excepto el constructor de VSPackage:
Dim log As IVsActivityLog log = GetService(GetType(SVsActivityLog)) If log Is Nothing Then Return End If Dim hr As Integer hr = log.LogEntry(CType(__ACTIVITYLOG_ENTRYTYPE.ALE_INFORMATION, UInt32), Me.ToString(), String.Format(CultureInfo.CurrentCulture, "Entering initializer for: {0}", Me.ToString()))
IVsActivityLog log = GetService(typeof(SVsActivityLog)) as IVsActivityLog; if (log == null) return; int hr = log.LogEntry((UInt32)__ACTIVITYLOG_ENTRYTYPE.ALE_INFORMATION, this.ToString(), string.Format(CultureInfo.CurrentCulture, "Entering initializer for: {0}", this.ToString()));
Este código obtiene el servicio y las conversiones de SVsActivityLog a una interfaz de IVsActivityLog . LogEntry escribe una entrada informativa en el registro de actividad utilizando el contexto cultural actual.
Cargue el paquete VSPackage.
para examinar el registro de actividad
Busque el inicio de sesión de actividad la subcarpeta para los datos de Visual Studio.
por ejemplo, %AppData%\Microsoft\VisualStudio\10.0\ActivityLog.XML.
Abra el registro de actividad con cualquier editor de texto.
A continuación se muestra una entrada típica:
50 Entering initializer for: Company.MyApp.MyAppPackage ...
Programación eficaz
Dado que el registro de actividad es un servicio, el registro de actividades no está disponible en el constructor de VSPackage.
Debe obtener el registro de actividades justo antes de escribir en ella. No almacene en memoria caché o guarde el registro de actividades para uso futuro.