diff --git a/Plugins/Wox.Plugin.Everything/Main.cs b/Plugins/Wox.Plugin.Everything/Main.cs index 231d94d0c2..c08efc85b7 100644 --- a/Plugins/Wox.Plugin.Everything/Main.cs +++ b/Plugins/Wox.Plugin.Everything/Main.cs @@ -142,6 +142,7 @@ namespace Wox.Plugin.Everything Helper.ValidateDataDirectory(bundledSDKDirectory, sdkDirectory); var sdkPath = Path.Combine(sdkDirectory, DLL); + Constant.EverythingSDKPath = sdkPath; LoadLibrary(sdkPath); } diff --git a/Wox.Core/Plugin/PluginsLoader.cs b/Wox.Core/Plugin/PluginsLoader.cs index b2132eb4ae..a43cd43b35 100644 --- a/Wox.Core/Plugin/PluginsLoader.cs +++ b/Wox.Core/Plugin/PluginsLoader.cs @@ -3,6 +3,7 @@ using System.Collections.Generic; using System.IO; using System.Linq; using System.Reflection; +using Wox.Infrastructure; using Wox.Infrastructure.Exception; using Wox.Infrastructure.Logger; using Wox.Infrastructure.UserSettings; @@ -113,6 +114,7 @@ namespace Wox.Core.Plugin return new List(); } } + Constant.PythonPath = filename; var plugins = metadatas.Select(metadata => new PluginPair { Plugin = new PythonPlugin(filename), diff --git a/Wox.Infrastructure/Exception/ExceptionFormatter.cs b/Wox.Infrastructure/Exception/ExceptionFormatter.cs index 31f548ae8d..91fc5f2f4b 100644 --- a/Wox.Infrastructure/Exception/ExceptionFormatter.cs +++ b/Wox.Infrastructure/Exception/ExceptionFormatter.cs @@ -24,54 +24,52 @@ namespace Wox.Infrastructure.Exception sb.AppendLine(); sb.AppendLine("```"); - var exlist = new List(); + var exlist = new List(); - while (ex != null) + while (ex != null) + { + var exsb = new StringBuilder(); + exsb.Append(ex.GetType().FullName); + exsb.Append(": "); + exsb.AppendLine(ex.Message); + if (ex.Source != null) { - var exsb = new StringBuilder(); - exsb.Append(ex.GetType().FullName); - exsb.Append(": "); - exsb.AppendLine(ex.Message); - if (ex.Source != null) - { - exsb.Append(" Source: "); - exsb.AppendLine(ex.Source); - } - if (ex.TargetSite != null) - { - exsb.Append(" TargetAssembly: "); - exsb.AppendLine(ex.TargetSite.Module.Assembly.ToString()); - exsb.Append(" TargetModule: "); - exsb.AppendLine(ex.TargetSite.Module.ToString()); - exsb.Append(" TargetSite: "); - exsb.AppendLine(ex.TargetSite.ToString()); - } - exsb.AppendLine(ex.StackTrace); - exlist.Add(exsb); - - ex = ex.InnerException; + exsb.Append(" Source: "); + exsb.AppendLine(ex.Source); } - - foreach (var result in exlist.Select(o => o.ToString()).Reverse()) + if (ex.TargetSite != null) { - sb.AppendLine(result); + exsb.Append(" TargetAssembly: "); + exsb.AppendLine(ex.TargetSite.Module.Assembly.ToString()); + exsb.Append(" TargetModule: "); + exsb.AppendLine(ex.TargetSite.Module.ToString()); + exsb.Append(" TargetSite: "); + exsb.AppendLine(ex.TargetSite.ToString()); } - sb.AppendLine("```"); - sb.AppendLine(); + exsb.AppendLine(ex.StackTrace); + exlist.Add(exsb); + + ex = ex.InnerException; + } + + foreach (var result in exlist.Select(o => o.ToString()).Reverse()) + { + sb.AppendLine(result); + } + sb.AppendLine("```"); + sb.AppendLine(); sb.AppendLine("## Environment"); - sb.AppendLine(); - sb.Append("* Command Line: "); - sb.AppendLine(Environment.CommandLine); - sb.Append("* Timestamp: "); - sb.AppendLine(DateTime.Now.ToString(CultureInfo.InvariantCulture)); - sb.Append("* IntPtr Length: "); - sb.AppendLine(IntPtr.Size.ToString()); - sb.Append("* System Version: "); - sb.AppendLine(Environment.OSVersion.VersionString); - sb.Append("* CLR Version: "); - sb.AppendLine(Environment.Version.ToString()); - sb.AppendLine("* Installed .NET Framework: "); + sb.AppendLine($"* Command Line: {Environment.CommandLine}"); + sb.AppendLine($"* Timestamp: {DateTime.Now.ToString(CultureInfo.InvariantCulture)}"); + sb.AppendLine($"* Wox version: {Constant.Version}"); + sb.AppendLine($"* OS Version: {Environment.OSVersion.VersionString}"); + sb.AppendLine($"* IntPtr Length: {IntPtr.Size}"); + sb.AppendLine($"* x64: {Environment.Is64BitOperatingSystem}"); + sb.AppendLine($"* Python Path: {Constant.PythonPath}"); + sb.AppendLine($"* Everything SDK Path: {Constant.EverythingSDKPath}"); + sb.AppendLine($"* CLR Version: {Environment.Version}"); + sb.AppendLine($"* Installed .NET Framework: "); foreach (var result in GetFrameworkVersionFromRegistry()) { sb.Append(" * "); diff --git a/Wox.Infrastructure/Wox.cs b/Wox.Infrastructure/Wox.cs index 4e73c94703..39f2fe6229 100644 --- a/Wox.Infrastructure/Wox.cs +++ b/Wox.Infrastructure/Wox.cs @@ -21,5 +21,8 @@ namespace Wox.Infrastructure public const string Github = "https://github.com/Wox-launcher/Wox"; public const string Issue = "https://github.com/Wox-launcher/Wox/issues/new"; public static readonly string Version = FileVersionInfo.GetVersionInfo(Assembly.Location).ProductVersion; + + public static string PythonPath; + public static string EverythingSDKPath; } } diff --git a/Wox/ReportWindow.xaml.cs b/Wox/ReportWindow.xaml.cs index 6a365e46c8..93fbb08cb7 100644 --- a/Wox/ReportWindow.xaml.cs +++ b/Wox/ReportWindow.xaml.cs @@ -34,6 +34,10 @@ namespace Wox StringBuilder content = new StringBuilder(); content.AppendLine($"Wox version: {Constant.Version}"); content.AppendLine($"OS Version: {Environment.OSVersion.VersionString}"); + content.AppendLine($"IntPtr Length: {IntPtr.Size}"); + content.AppendLine($"x64: {Environment.Is64BitOperatingSystem}"); + content.AppendLine($"Python Path: {Constant.PythonPath}"); + content.AppendLine($"Everything SDK Path: {Constant.EverythingSDKPath}"); content.AppendLine($"Date: {DateTime.Now.ToString(CultureInfo.InvariantCulture)}"); content.AppendLine("Exception:"); content.AppendLine(exception.Source);