akorb / SteamShutdown

Automatic shutdown after Steam download(s) has finished.
MIT License
362 stars 28 forks source link

Crash when startup #44

Closed Retonecine closed 2 years ago

Retonecine commented 3 years ago

I have just sent you the log via email, and there is some other message. 有关调用实时(JIT)调试而不是此对话框的详细信息, 请参见此消息的结尾。

** 异常文本 ** System.Reflection.TargetInvocationException: 调用的目标发生了异常。 ---> System.TypeInitializationException: “SteamShutdown.Steam”的类型初始值设定项引发异常。 ---> System.ArgumentException: 路径中具有非法字符。 在 System.IO.Path.CheckInvalidPathChars(String path, Boolean checkAdditional) 在 System.IO.Path.Combine(String path1, String path2) 在 System.Dynamic.UpdateDelegates.UpdateAndExecute3[T0,T1,T2,TRet](CallSite site, T0 arg0, T1 arg1, T2 arg2) 在 SteamShutdown.Steam.GetLibraryPaths() 在 SteamShutdown.Steam..cctor() --- 内部异常堆栈跟踪的结尾 --- 在 SteamShutdown.Steam.get_SortedApps() 在 SteamShutdown.CustomApplicationContext.ContextMenuStrip_Opening(Object sender, CancelEventArgs e) 在 System.Windows.Forms.ToolStripDropDown.OnOpening(CancelEventArgs e) 在 System.Windows.Forms.ToolStripDropDown.SetVisibleCore(Boolean visible) 在 System.Windows.Forms.ContextMenuStrip.SetVisibleCore(Boolean visible) 在 System.Windows.Forms.ToolStripDropDown.Show(Int32 x, Int32 y) 在 System.Windows.Forms.ContextMenuStrip.ShowInTaskbar(Int32 x, Int32 y) 在 System.Windows.Forms.NotifyIcon.ShowContextMenu() --- 内部异常堆栈跟踪的结尾 --- 在 System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor) 在 System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments) 在 System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) 在 SteamShutdown.CustomApplicationContext.NotifyIcon_MouseUp(Object sender, MouseEventArgs e) 在 System.Windows.Forms.NotifyIcon.OnMouseUp(MouseEventArgs e) 在 System.Windows.Forms.NotifyIcon.WmMouseUp(Message& m, MouseButtons button) 在 System.Windows.Forms.NotifyIcon.WndProc(Message& msg) 在 System.Windows.Forms.NotifyIcon.NotifyIconNativeWindow.WndProc(Message& m) 在 System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

** 已加载的程序集 ** mscorlib 程序集版本:4.0.0.0 Win32 版本:4.8.4390.0 built by: NET48REL1LAST_C 基本代码:file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll

SteamShutdown_Merged 程序集版本:2.2.0.0 Win32 版本:2.2.0.0 基本代码:file:///E:/SteamShutdown.exe

System.Windows.Forms 程序集版本:4.0.0.0 Win32 版本:4.8.4390.0 built by: NET48REL1LAST_C 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll

System 程序集版本:4.0.0.0 Win32 版本:4.8.4360.0 built by: NET48REL1LAST_C 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll

System.ServiceModel 程序集版本:4.0.0.0 Win32 版本:4.8.4250.0 built by: NET48REL1LAST_C 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.ServiceModel/v4.0_4.0.0.0__b77a5c561934e089/System.ServiceModel.dll

SMDiagnostics 程序集版本:4.0.0.0 Win32 版本:4.8.4250.0 built by: NET48REL1LAST_C 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/SMDiagnostics/v4.0_4.0.0.0__b77a5c561934e089/SMDiagnostics.dll

System.Runtime.Serialization 程序集版本:4.0.0.0 Win32 版本:4.8.4250.0 built by: NET48REL1LAST_C 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Runtime.Serialization/v4.0_4.0.0.0__b77a5c561934e089/System.Runtime.Serialization.dll

System.Xml 程序集版本:4.0.0.0 Win32 版本:4.8.4084.0 built by: NET48REL1 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll

System.ServiceModel.Internals 程序集版本:4.0.0.0 Win32 版本:4.8.4250.0 built by: NET48REL1LAST_C 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.ServiceModel.Internals/v4.0_4.0.0.0__31bf3856ad364e35/System.ServiceModel.Internals.dll

System.Configuration 程序集版本:4.0.0.0 Win32 版本:4.8.4190.0 built by: NET48REL1LAST_B 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll

System.Core 程序集版本:4.0.0.0 Win32 版本:4.8.4390.0 built by: NET48REL1LAST_C 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll

System.Transactions 程序集版本:4.0.0.0 Win32 版本:4.8.4084.0 built by: NET48REL1 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_32/System.Transactions/v4.0_4.0.0.0__b77a5c561934e089/System.Transactions.dll

System.IdentityModel 程序集版本:4.0.0.0 Win32 版本:4.8.4250.0 built by: NET48REL1LAST_C 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.IdentityModel/v4.0_4.0.0.0__b77a5c561934e089/System.IdentityModel.dll

System.Drawing 程序集版本:4.0.0.0 Win32 版本:4.8.4390.0 built by: NET48REL1LAST_C 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll

Accessibility 程序集版本:4.0.0.0 Win32 版本:4.8.4084.0 built by: NET48REL1 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/Accessibility/v4.0_4.0.0.0__b03f5f7f11d50a3a/Accessibility.dll

Microsoft.CSharp 程序集版本:4.0.0.0 Win32 版本:4.8.4084.0 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/Microsoft.CSharp/v4.0_4.0.0.0__b03f5f7f11d50a3a/Microsoft.CSharp.dll

System.Numerics 程序集版本:4.0.0.0 Win32 版本:4.8.4084.0 built by: NET48REL1 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Numerics/v4.0_4.0.0.0__b77a5c561934e089/System.Numerics.dll

System.Dynamic 程序集版本:4.0.0.0 Win32 版本:4.8.4084.0 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Dynamic/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Dynamic.dll

Anonymously Hosted DynamicMethods Assembly 程序集版本:0.0.0.0 Win32 版本:4.8.4390.0 built by: NET48REL1LAST_C 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_32/mscorlib/v4.0_4.0.0.0__b77a5c561934e089/mscorlib.dll

mscorlib.resources 程序集版本:4.0.0.0 Win32 版本:4.8.4084.0 built by: NET48REL1 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/mscorlib.resources/v4.0_4.0.0.0_zh-Hans_b77a5c561934e089/mscorlib.resources.dll

System.Windows.Forms.resources 程序集版本:4.0.0.0 Win32 版本:4.8.4084.0 built by: NET48REL1 基本代码:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms.resources/v4.0_4.0.0.0_zh-Hans_b77a5c561934e089/System.Windows.Forms.resources.dll

** JIT 调试 ** 要启用实时(JIT)调试, 该应用程序或计算机的 .config 文件(machine.config)的 system.windows.forms 节中必须设置 jitDebugging 值。 编译应用程序时还必须启用 调试。

例如:

启用 JIT 调试后,任何未经处理的异常 都将被发送到在此计算机上注册的 JIT 调试程序, 而不是由此对话框处理。 Your app is great and I hope it could work again! Thank you!

akorb commented 3 years ago

Hi, thanks for your report. Can you please execute this version? On your desktop, a file called debugging.txt will be created. Can you share this file here please? SteamShutdown.zip

Ironeer commented 3 years ago

Hi, i had a similar problem, your new version worked:

Log with old version: System.TypeInitializationException: The type initializer for 'SteamShutdown.Steam' threw an exception. ---> System.ArgumentException: Illegal characters in path.

 at System.IO.Path.CheckInvalidPathChars(String path, Boolean checkAdditional)
 at System.IO.Path.Combine(String path1, String path2)
 at System.Dynamic.UpdateDelegates.UpdateAndExecute3[T0,T1,T2,TRet](CallSite site, T0 arg0, T1 arg1, T2 arg2)
 at SteamShutdown.Steam.GetLibraryPaths()
 at SteamShutdown.Steam..cctor()
 --- End of inner exception stack trace ---
 at SteamShutdown.Steam.add_AppInfoChanged(AppInfoChangedEventHandler value)
 at SteamShutdown.CustomApplicationContext..ctor()
 at SteamShutdown.Program.Main()

Debugging.txt: installationPath: C:\Program Files (x86)\Steam pathNode.ToString(): D:\SteamLibrary

akorb commented 3 years ago

Hi, is it reproducable that it crashes with the current official release (2.3.8) but works with the version I posted previously here https://github.com/akorb/SteamShutdown/issues/44#issuecomment-901456170 ?

Ironeer commented 2 years ago

OK, the version it did not work with was 2.2.0 Your latest release (2.3.8) works like a charm, just like the debug version you provided. Therefore @Retonecine should try to update too. If that does not work our errors were different.

P.S. from one developer to another: Nice work!