public static void MessageBox(string title, string message, __ACTIVITYLOG_ENTRYTYPE entryType) { ThreadHelper.ThrowIfNotOnUIThread(); var icon = OLEMSGICON.OLEMSGICON_INFO; if (entryType == __ACTIVITYLOG_ENTRYTYPE.ALE_ERROR) { icon = OLEMSGICON.OLEMSGICON_CRITICAL; } else if (entryType == __ACTIVITYLOG_ENTRYTYPE.ALE_WARNING) { icon = OLEMSGICON.OLEMSGICON_WARNING; } var uiShell = ServiceProvider.GetService(typeof(SVsUIShell)) as IVsUIShell; Assumes.Present(uiShell); var clsid = Guid.Empty; // ReSharper disable once PossibleNullReferenceException uiShell.ShowMessageBox( 0, ref clsid, title, message, string.Empty, 0, OLEMSGBUTTON.OLEMSGBUTTON_OK, OLEMSGDEFBUTTON.OLEMSGDEFBUTTON_FIRST, icon, 0, out _); }
private void Log(string message, __ACTIVITYLOG_ENTRYTYPE msgType) { var logger = _serviceProvider.GetService(typeof(SVsActivityLog)) as IVsActivityLog; Debug.Assert(logger!=null); logger.LogEntry((uint)msgType, "RuntimeTestCoverage", message); }
private static void LogToActivityLog(string message, __ACTIVITYLOG_ENTRYTYPE type) { ThreadHelper.JoinableTaskFactory.RunAsync(async() => { await ThreadHelper.JoinableTaskFactory.SwitchToMainThreadAsync(); ActivityLog.LogEntry((uint)type, Vsix.Name, message); }); }
/// <summary> /// 使用IVsActivityLog服务记录VS日志. /// </summary> void LogEntry(__ACTIVITYLOG_ENTRYTYPE type, string message) { if (vsActivityLog != null) { int hr = vsActivityLog.LogEntry((UInt32)type, this.ToString(), message); ErrorHandler.ThrowOnFailure(hr); } }
private void Log(__ACTIVITYLOG_ENTRYTYPE type, string message, params object[] arguments) { var log = package.GetService(typeof(SVsActivityLog)) as IVsActivityLog; if (log == null) { return; } log.LogEntry((UInt32)type, "SwitchStartupProject", string.Format(CultureInfo.CurrentCulture, message, arguments)); }
private void WriteEntry(__ACTIVITYLOG_ENTRYTYPE entryType, string description) { ThreadHelper.JoinableTaskFactory.Run(async delegate { await ThreadHelper.JoinableTaskFactory.SwitchToMainThreadAsync(); if (!(await _package.GetServiceAsync(typeof(SVsActivityLog)) is IVsActivityLog logger)) { return; } logger.LogEntry((uint)__ACTIVITYLOG_ENTRYTYPE.ALE_ERROR, _package.ToString(), description); });
// NOTE: https://docs.microsoft.com/en-us/visualstudio/extensibility/how-to-use-the-activity-log?view=vs-2019 public static void Log(string message, __ACTIVITYLOG_ENTRYTYPE entryType) { ThreadHelper.ThrowIfNotOnUIThread(); var log = ServiceProvider.GetService(typeof(SVsActivityLog)) as IVsActivityLog; Assumes.Present(log); // ReSharper disable once PossibleNullReferenceException log.LogEntry((uint)entryType, _package.ToString(), message); }
private static void Write(__ACTIVITYLOG_ENTRYTYPE entryType, string message, object[] args) { string entry = string.Format(message, args); if (iVsLog != null) { iVsLog.LogEntry((uint)entryType, "Gadgeteer", entry); } Trace.WriteLine(entry); //Debug.Assert(entryType != __ACTIVITYLOG_ENTRYTYPE.ALE_ERROR, entry); }
private async System.Threading.Tasks.Task Log(__ACTIVITYLOG_ENTRYTYPE type, string message, params object[] arguments) { await ThreadHelper.JoinableTaskFactory.SwitchToMainThreadAsync(); var log = _serviceProvider.GetService(typeof(SVsActivityLog)) as IVsActivityLog; if (log == null) { return; } log.LogEntry((UInt32)type, _packageOrComponentName, string.Format(CultureInfo.CurrentCulture, message, arguments)); }
private async Task LogMessageAsync(__ACTIVITYLOG_ENTRYTYPE actType, string message) { await ThreadHelper.JoinableTaskFactory.SwitchToMainThreadAsync(); // ReSharper disable once SuspiciousTypeConversion.Global var log = (IVsActivityLog)GodotPackage.Instance.GetService <SVsActivityLog>(); if (log == null) { return; } _ = log.LogEntry((uint)actType, this.ToString(), message); }
private void ActivityLogEntry(__ACTIVITYLOG_ENTRYTYPE entryType, string message) { OutputMessage(message); // Logs to %AppData%\Microsoft\VisualStudio\14.0\ActivityLog.XML. // Obtain the activity log just before writing to it, do not cache or save the activity log for future use. var log = GetService(typeof(SVsActivityLog)) as IVsActivityLog; if (log == null) { return; } ErrorHandler.ThrowOnFailure(log.LogEntryGuid((uint)entryType, ToString(), message, AsqaPackageGuid)); }
internal async Task <bool> TryWriteToActivityLogAsync(__ACTIVITYLOG_ENTRYTYPE kind, string text) { await JoinableTaskFactory.SwitchToMainThreadAsync(DisposalToken); // Reminder: "You should obtain the activity log just before writing to it. Do not cache or save the activity log for future use." // See: https://docs.microsoft.com/en-us/visualstudio/extensibility/how-to-use-the-activity-log?view=vs-2017 var log = await GetServiceAsync(typeof(SVsActivityLog)) as IVsActivityLog; if (log == null) { return(false); } log.LogEntry((uint)kind, ToString(), text); return(true); }
private void Log(string text, __ACTIVITYLOG_ENTRYTYPE type) { if (!this.IsForeground()) { this.InvokeBelowInputPriority(() => Log(text, type)); return; } AssertIsForeground(); _activityLog?.LogEntry((uint)type, HostId, text); // Keep a running in memory log as well for debugging purposes. s_log.AddLast(text); while (s_log.Count > 100) { s_log.RemoveFirst(); } }
private void ActivityLogEntry(__ACTIVITYLOG_ENTRYTYPE entryType, string message) { debug_message(message); // Logs to %AppData%\Microsoft\VisualStudio\14.0\ActivityLog.XML. // Recommended to obtain the activity log just before writing to it. Do not cache or save the activity log for future use. var log = GetService(typeof(SVsActivityLog)) as IVsActivityLog; if (log == null) { return; } int hr = log.LogEntryGuid( (UInt32)entryType, this.ToString(), message, SsmsSchemaFoldersPackage.PackageGuid); }
private async void Log(__ACTIVITYLOG_ENTRYTYPE logType, string message) { // This is an async void method. Catch all exceptions so it doesn't crash the process. try { await _joinableTaskFactory.SwitchToMainThreadAsync(); var activityLog = GetActivityLog(); if (activityLog != null) { var hr = activityLog.LogEntry( (uint)logType, "Razor LSP Client", $"Info:{Environment.NewLine}{message}"); ErrorHandler.ThrowOnFailure(hr); } } catch (Exception ex) { Debug.Fail($"Razor LSP client logging failed. Error: {ex.Message}"); } }
private static void LogToActivityLog(string message, __ACTIVITYLOG_ENTRYTYPE type) { ThreadHelper.Generic.BeginInvoke(() => ActivityLog.LogEntry((uint)type, Vsix.Name, message)); }
private ValueTask LogAsync(string text, __ACTIVITYLOG_ENTRYTYPE type) { Log(text, type); return(default);
private Task LogAsync(string text, __ACTIVITYLOG_ENTRYTYPE type) { Log(text, type); return(SpecializedTasks.EmptyTask); }
private Task LogAsync(string text, __ACTIVITYLOG_ENTRYTYPE type) { Log(text, type); return(Task.CompletedTask); }
private Task LogAsync(string text, __ACTIVITYLOG_ENTRYTYPE type) { Log(text, type); return SpecializedTasks.EmptyTask; }
private void Log(__ACTIVITYLOG_ENTRYTYPE level, string message, params object[] arguments) { _activityLog.LogEntry((uint)level, _logType.Name, String.Format(message, arguments)); }
private static void LogToActivityLog(string message, __ACTIVITYLOG_ENTRYTYPE type) { _activityLog.LogEntry((uint)type, Vsix.Name, message); }