IgorMundstein / WinMemoryCleaner

This free RAM cleaner uses native Windows features to optimize memory areas. It's a compact, portable, and smart application.
GNU General Public License v3.0
2.21k stars 146 forks source link

After setting up to Start at startup, GUI doesn't open anymore in any way. Systray appears, it's just the GUI never opens. #62

Closed ssj4maiko closed 9 months ago

ssj4maiko commented 9 months ago

Checklist

App version

2.5

Windows version

11

Steps To Reproduce

This is my guess, as I can't get it to normal anymore. 1 - I opened the program for the first time. I set it up to open at systray, and to start with Windows (Can't remember if I set up anything else) 2 - Eventually turned off Windows, and then turned on again, WMC started up at Systray, I can Right Click it and "Optimize" and "Exit, both work normally. 3 - Double click to open the interface, it appears to open, however, there is nothing. Trying to move the window (Right click, move, press arrows) shows nothing, as if it's invisible or non-existent, although the mouse acts like if it's moving something.

Current Behavior

Closing and opening again does not fix. Killing the process and opening it up again does not fix Blocking it at startup and then running it normally does not fix either.

In short, I can't open the GUI anymore, and with that, I can't change any options. I would believe maybe removing a config file to force reset settings would fix it, but I don't know where it is, if any, so it's stuck with this behavior.

Expected Behavior

Open the GUI, thus being able to see the interface and interact with it

Anything else?

08xxE9uRHK

I can share config files and logs, although I have no idea where they are.

ssj4maiko commented 9 months ago

I'm more used to use English, besides, most other people searching for help here could find this Issue useful, so it would be good for them to be able to read it. :)

OK, so here is my regedit data regedit_4B89HPwQ0R

Regarding logs, all I could find were info logs like


Processes Working Set (Optimized) (0.9 seconds)
System Working Set (Optimized) (0.1 seconds)
Modified Page List (Optimized) (3.2 seconds)
Standby List (Optimized) (2.0 seconds)

Back to the first logs, which I would guess are from when I first ran them, so I suspect there is nothing there to help.

Deleting the whole entry from regedit to reset all settings did fix it.

Edit: I replicated the options as I selected, closed the application and reopened it again, same problem, so I was able to replicate it like this.

ssj4maiko commented 9 months ago

The bug seems to be explicitly related to the "Start minimized" option, as the moment I turned it off straight from regedit, it returned back to normal.

IgorMundstein commented 9 months ago

I got it. Unfortunately, I can't reproduce it on my machine. I'll add workarounds to handle window visibility.

ssj4maiko commented 9 months ago

How curious, I don't think that's the case, but if not from peculiarities in my machine, maybe functions being actively used are meddling with the rendering? I don't know how you are doing that in this application (I'm not a C# dev).

Trying to think of things that could lead to problems with resolution/rendering, I'm using a Windows handheld, so there could be some peculiarities regarding drivers and so on.

I tried changings with different resolutions (My default one is low, 720p), but nothing changed. I wondered if multiple desktops were also interfering, so I closed my extra one, but nothing changed either. I tried some different combinations of options, but the "Always Minimized" is always the only one (I can change it back via regedit, so I can always fix it)

If you want, I could try some debug builds that you could set up more debugs to check for possible problems.

Since Always Minimized is related to the problem, maybe it could be that some check is not being triggered first, so it ends up never being rendered in the first place? A window is not rendered when I start WMC, and it's not rendered when I click on it from the taskbar.

It is only fixed when I exit, disable the option, and run it again.

This is the main thing that comes to mind.

IgorMundstein commented 9 months ago

How curious, I don't think that's the case, but if not from peculiarities in my machine, maybe functions being actively used are meddling with the rendering? I don't know how you are doing that in this application (I'm not a C# dev).

Trying to think of things that could lead to problems with resolution/rendering, I'm using a Windows handheld, so there could be some peculiarities regarding drivers and so on.

The functions are Show() and Hide(). They exist on the .NET Framework. So, it's the Windows' responsibility to control the rendering.

I'm unsure what you mean by Windows handheld. Are you running Windows on a mobile device like ROG Ally?

There is a chance that could be an issue. The app runs on the .NET Framework 4 version released in 2010. We didn't have Windows running on mobile devices by then. Also, Windows releases .NET Framework updates. Make sure your Windows is up to date.

This is my Windows build.

image

If you want, I could try some debug builds that you could set up more debugs to check for possible problems.

That would be an option, but we would have to connect in an audio call.

I tried changings with different resolutions (My default one is low, 720p), but nothing changed. I wondered if multiple desktops were also interfering, so I closed my extra one, but nothing changed either. I tried some different combinations of options, but the "Always Minimized" is always the only one (I can change it back via regedit, so I can always fix it)

Since Always Minimized is related to the problem, maybe it could be that some check is not being triggered first, so it ends up never being rendered in the first place? A window is not rendered when I start WMC, and it's not rendered when I click on it from the taskbar.

It is only fixed when I exit, disable the option, and run it again.

This is the main thing that comes to mind.

You mean "Start Minimized" not "Always Minimized".

Sure. Please try this new version I am about to release. I made some changes based on your report.

WinMemoryCleaner 2.6.zip

ssj4maiko commented 9 months ago

The functions are Show() and Hide(). They exist on the .NET Framework. So, it's the Windows' responsibility to control the rendering.

I'm unsure what you mean by Windows handheld. Are you running Windows on a mobile device like ROG Ally?

There is a chance that could be an issue. The app runs on the .NET Framework 4 version released in 2010. We didn't have Windows running on mobile devices by then. Also, Windows releases .NET Framework updates. Make sure your Windows is up to date.

This is my Windows build.

Yes, although I did reinstall windows from scratch from the start, and later installed the related drivers, so it should be no different from a laptop or desktop regarding its version. Regarding updates, I always try to keep it updated, but mine is 22H2, Build 22621.

You mean "Start Minimized" not "Always Minimized".

Yeah, it was pretty late when I reported, so I mixed things up, maybe because of the Always on top option.

Sure. Please try this new version I am about to release. I made some changes based on your report.

WinMemoryCleaner 2.6.zip

It worked straight way, tried to replicate the problem, but it did not happen again, the interface always shows properly. I guess it was fixed. :)

IgorMundstein commented 9 months ago

Cool. Glad it worked. Enjoy the new version before everyone else. 🤫

Your report helped to improve the code. Thanks!

IgorMundstein commented 9 months ago

Improved on version 2.6