IridiumIO / CompactGUI

Transparently compress active games and programs using Windows 10/11 APIs
GNU General Public License v3.0
4.71k stars 223 forks source link

CompactGUI crashes immediatly after starting #405

Closed flameshikari closed 3 months ago

flameshikari commented 4 months ago

Update: found the solution

System Info

CompactGUI Version: 3.2.0 OS: Windows 11 Pro 23H2 (22631.3155)

Notes

I didn't find where CompactGUI logs are stored, sorry. I can give more info, just tell me.

What I've tried and it didn't help:

settings.json is empty.

watcher.json:

{
  "Item1": "0001-01-01T00:00:00",
  "Item2": []
}

Also, databasev2.json changes in size every time I start CompactGUI.

Behavior

minhgi commented 4 months ago

Same with version crash on my laptop too. Windows 11 2H23. Delete %LOCALAPPDATA%\IridiumIO\CompactGUI as well.

gabri25ele commented 4 months ago

yes me too with 3.2 version

gabri25ele commented 4 months ago

now also the 3.1.1 crash immediately 3.1.0 still work.

flameshikari commented 4 months ago

I've launched 3.1.0, then clicked OK in a popup, after that 3.2.0 started without issues. 🧐

Maybe the new version has issues with creating settings.json or something like that. Anyway I let the developer close the issue himself once the problem is solved!

gabri25ele commented 4 months ago

I've launched 3.1.0, then clicked OK in a popup, after that 3.2.0 started without issues. 🧐

yes! very strange.

Iridium-IO commented 4 months ago

I love releasing bug fixes that create even more bugs :(

@flameshikari, @gabri25ele , @minhgi can I get you guys to check your event logs to see what the error messages are:

  1. Open Event Viewer
  2. Navigate to Windows Logs > Application
  3. Find the CompactGUI error and paste the error message here
gabri25ele commented 4 months ago

.NET Runtime error 1026

Application: CompactGUI.exe CoreCLR Version: 6.0.1322.58009 .NET Version: 6.0.13 Description: The process was terminated due to an unhandled exception. Exception Info: System.InvalidCastException: Unable to cast object of type 'System.Security.Principal.SecurityIdentifier' to type 'System.Security.Principal.NTAccount'. at CompactGUI.Core.Analyser.HasDirectoryWritePermission() at CompactGUI.MainViewModel.AnalyseBegin() at System.Threading.Tasks.Task.<>c.b__128_0(Object state) at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs) at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler) at System.Windows.Threading.DispatcherOperation.InvokeImpl() at MS.Internal.CulturePreservingExecutionContext.CallbackWrapper(Object obj) at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state) --- End of stack trace from previous location --- at MS.Internal.CulturePreservingExecutionContext.Run(CulturePreservingExecutionContext executionContext, ContextCallback callback, Object state) at System.Windows.Threading.DispatcherOperation.Invoke() at System.Windows.Threading.Dispatcher.ProcessQueue() at System.Windows.Threading.Dispatcher.WndProcHook(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled) at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled) at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o) at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs) at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler) at System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs) at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam) at MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg) at System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame) at System.Windows.Threading.Dispatcher.PushFrame(DispatcherFrame frame) at System.Windows.Threading.Dispatcher.Run() at System.Windows.Application.RunDispatcher(Object ignore) at System.Windows.Application.RunInternal(Window window) at System.Windows.Application.Run() at CompactGUI.Application.Main()

Application Error Nome dell'applicazione che ha generato l'errore: CompactGUI.exe, versione: 3.0.0.0, timestamp: 0x65ab0000 Nome del modulo che ha generato l'errore: KERNELBASE.dll, versione: 10.0.22621.3227, timestamp: 0x2b72307b Codice eccezione: 0xe0434352 Offset errore 0x0000000000065b0c ID processo che ha generato l'errore: 0x0x6EC Ora di avvio dell'applicazione che ha generato l'errore: 0x0x1DA6B300C74DE87 Percorso dell'applicazione che ha generato l'errore: C:\CompactGUI.exe Percorso del modulo che ha generato l'errore: C:\Windows\System32\KERNELBASE.dll ID segnalazione: b2419f49-3c59-42d0-ae6f-e4363d5b3e47 Nome completo pacchetto che ha generato l'errore:

Iridium-IO commented 4 months ago

@gabri25ele Ah it's the stupid permissions error that strikes again:

Unable to cast object of type 'System.Security.Principal.SecurityIdentifier' to type 'System.Security.Principal.NTAccount'.

This is actually related to the SID error you've commented on here #356 which I still haven't figured out yet, and should technically be unrelated to any of the changes I've made in 3.1.0 or 3.2.0.

flameshikari commented 4 months ago

@Iridium-IO sorry for late answer. Here are logs.

Also I noticed that the file version under Properties → Details isn't correct (but by commit it's 3.2.0).

image

Application Error

Faulting application name: 3.2.0.exe, version: 3.0.0.0, time stamp: 0x65ab0000
Faulting module name: KERNELBASE.dll, version: 10.0.22621.3155, time stamp: 0x8c2ee5db
Exception code: 0xe0434352
Fault offset: 0x0000000000065b0c
Faulting process id: 0x0x6A30
Faulting application start time: 0x0x1DA6C150BEC8E1F
Faulting application path: A:\Desktop\3.2.0.exe
Faulting module path: C:\Windows\System32\KERNELBASE.dll
Report Id: cc0320b2-f1ad-4fec-b135-852ecccb421c
Faulting package full name: 
Faulting package-relative application ID: 

.NET Runtime Error

Application: 3.2.0.exe
CoreCLR Version: 6.0.2724.6912
.NET Version: 6.0.27
Description: The process was terminated due to an unhandled exception.
Exception Info: System.InvalidOperationException: Only a single ContentDialog can be open at any time.
   at ModernWpf.Controls.ContentDialog.ThrowAlreadyOpenException()
   at ModernWpf.Controls.ContentDialog.ThrowIfHasOpenDialog(Window owner)
   at ModernWpf.Controls.ContentDialog.ShowAsync()
   at CompactGUI.SettingsHandler.InitialiseSettings()
   at System.Threading.Tasks.Task.<>c.<ThrowAsync>b__128_0(Object state)
   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
   at System.Windows.Threading.DispatcherOperation.InvokeImpl()
   at System.Windows.Threading.DispatcherOperation.InvokeInSecurityContext(Object state)
   at MS.Internal.CulturePreservingExecutionContext.CallbackWrapper(Object obj)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at MS.Internal.CulturePreservingExecutionContext.Run(CulturePreservingExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Windows.Threading.DispatcherOperation.Invoke()
   at System.Windows.Threading.Dispatcher.ProcessQueue()
   at System.Windows.Threading.Dispatcher.WndProcHook(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
   at System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
   at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
   at MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
   at System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
   at System.Windows.Threading.Dispatcher.PushFrame(DispatcherFrame frame)
   at System.Windows.Threading.Dispatcher.Run()
   at System.Windows.Application.RunDispatcher(Object ignore)
   at System.Windows.Application.RunInternal(Window window)
   at System.Windows.Application.Run()
   at CompactGUI.Application.Main()
00xBAD commented 4 months ago

Hi there, i have just fresh-run Compactgui.exe 3.2.0 and immediately crash, then downloaded 3.1.0 and it worked, then run again the 3.2.0 and it worked fine now...

here is my log to help investigate the issue:

Faulting application name: CompactGUI.exe, version: 3.0.0.0, time stamp: 0x65ab0000
Faulting module name: KERNELBASE.dll, version: 10.0.19041.3996, time stamp: 0xb756c9ff
Exception code: 0xe0434352
Fault offset: 0x000000000002cf19
Faulting process id: 0x2098
Faulting application start time: 0x01da6f3ad61097c7
Faulting application path: C:\Users\Downloads\CompactGUI.exe
Faulting module path: C:\Windows\System32\KERNELBASE.dll
Report Id: 4141bc30-fa22-4f0c-83f0-b0cf46d08344
Faulting package full name: 
Faulting package-relative application ID: 
Application: CompactGUI.exe
CoreCLR Version: 6.0.2724.6912
.NET Version: 6.0.27
Description: The process was terminated due to an unhandled exception.
Exception Info: System.InvalidOperationException: Only a single ContentDialog can be open at any time.
   at ModernWpf.Controls.ContentDialog.ThrowAlreadyOpenException()
   at ModernWpf.Controls.ContentDialog.ThrowIfHasOpenDialog(Window owner)
   at ModernWpf.Controls.ContentDialog.ShowAsync()
   at CompactGUI.SettingsHandler.InitialiseSettings()
   at System.Threading.Tasks.Task.<>c.<ThrowAsync>b__128_0(Object state)
   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
   at System.Windows.Threading.DispatcherOperation.InvokeImpl()
   at System.Windows.Threading.DispatcherOperation.InvokeInSecurityContext(Object state)
   at MS.Internal.CulturePreservingExecutionContext.CallbackWrapper(Object obj)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at MS.Internal.CulturePreservingExecutionContext.Run(CulturePreservingExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Windows.Threading.DispatcherOperation.Invoke()
   at System.Windows.Threading.Dispatcher.ProcessQueue()
   at System.Windows.Threading.Dispatcher.WndProcHook(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
   at System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
   at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
   at MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
   at System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
   at System.Windows.Threading.Dispatcher.PushFrame(DispatcherFrame frame)
   at System.Windows.Threading.Dispatcher.Run()
   at System.Windows.Application.RunDispatcher(Object ignore)
   at System.Windows.Application.RunInternal(Window window)
   at System.Windows.Application.Run()
   at CompactGUI.Application.Main()
XDAGamer commented 4 months ago

same here plz fix it soon

wuyilingwei commented 4 months ago

If new install try run this command in cmd.exe

echo [] > %LOCALAPPDATA%\IridiumIO\CompactGUI\settings.json

It can fix error setting json file.

XDAGamer commented 4 months ago

If new install try run this command in cmd.exe

echo [] > %LOCALAPPDATA%\IridiumIO\CompactGUI\settings.json

It can fix error setting json file.

that fixed it, thanks :)