marticliment / ElevenClock

ElevenClock: Customize Windows 11 taskbar clock
https://www.marticliment.com/elevenclock/
GNU General Public License v3.0
2.33k stars 175 forks source link

[BUG] Bad Image / Fatal Error (Parameter incorrect) / Fatal Error (LoadLibrary) #322

Closed ArthurWolfhound closed 2 years ago

ArthurWolfhound commented 2 years ago

Before submitting the issue

❌ #301 looks similar to mine, but not quite
✅ I have checked the settings window for an option to toggle/fix what is happening
⚠️ I had this issue on 2.6.1 and now on 2.8.0

Describe the bug

Something weird happens. Error messages are displayed on PC startup. Not always, only sometimes.

To Reproduce

Hard to reproduce, needs triage.

May be only occuring after specific pattern - PC went to sleep - PC went to hibernation after sleep

As I am writing this - I think it only happens on my system when the date changes (e.g. the next day) because I now think that I saw these messages only after I woke up next day.

Also I think I should mention, that I did try to reproduce the error manually, but nothing happened, so I think my idea with date change stands.

Expected behavior

Not that.

Screenshots

After PC turns on

20211128_132946

After I login

image

After I click OK on previous error

image

The Log

Sorry, I don't have the log, because Edge decided to annoy me by force switching to Bing and I had to restart (and forgot to save this issue, yes I am writing this second time here.) On the bright side - error pop-up said that no error messages were generated, haha.

And yes, I remember that there was no error messages about this issue (the color legend really helps for memory).

Additional context

Windows specifications

Edition: Windows 11 Home Version: 21H2 OS build: 22000.348 Experience: Windows Feature Experience Pack 1000.22000.348.0

Python specifications

Python 3.10.0 x64 (installed in user-scope directory) (%LocalAppData%\Programs\Python)

Language settings for PC

Windows display language: English (United States) Region and Regional formats: Ukrainian (Ukraine)

marticliment commented 2 years ago

Could you try installing this?

https://www.microsoft.com/en-us/download/confirmation.aspx?id=48145

ArthurWolfhound commented 2 years ago

Well, that's awkward.

  1. I just returned back home. no date change have ocurred, but I got the error. Just with the different path now, but the error and the messages are the same. image
  2. I did try to install C++ Redist that you offered, and there are two things about it:

2.1. Are you sure it is not an addon to Visual Studio? 2.2. Installation failed because another version is already installed.

image

About what I have already installed (I just use multi-installer as a good practice when resetting my system):

image

I do wonder though, why 2008 and 2012 are x86 only. Maybe I was not paying attention.

Decided to check the log to be sure, looks like when my PC was reloading from sleep to hibernation ElevenClock had the opportunity to try to check for updates, but network connection was dropped. Leaving it here to be sure

---------------------------------------------------------------------------------------------------

   ElevenClock's 2.8.0 (v2.8) log: Select all the text and hit Ctrl+C to copy it
   All modules loaded successfully and sys.stdout patched correctly, starting main script
   Translator function set language to "en"

---------------------------------------------------------------------------------------------------

 Log legend:
 🟦: Information
 🟩: Task completed successfully
 🟨: Expected warning
 🟧: Unexpected warning
 🟥: Error

🟨 System tray icon disabled
🟦 Starting update check
🟨 This is primay screen and is set to be skipped
🟦 Using bg color: 0, 0, 0, 0
🟩 Regular sized taskbar
🟦 Monitor geometry: PySide2.QtCore.QRect(-1920, 563, 1920, 1080)
🟩 Taskbar at bottom
🟨 Clock on the left
🟩 Using qt's default positioning system
🟦 Clock geometry: PySide2.QtCore.QRect(-250, 1583, 250, 60)
🟦 Font families: ['Segoe UI Variable Display', 'sans-serif']
🟦 Font size: 9.3
🟩 Using white text (dark mode)
🟦 Full screen rect:  (-1920, 563, 0, 1643)
🟦 Show/hide loop started with parameters: HideonFS:False, NotHideOnTB:False, HideOnRDP:False, ClockOn1Mon:False, NefWSMethod:False
🟦 Restart loop: 1
🟥 Traceback (most recent call last):

🟥   File "\\samba-server\SPTPrograms\ElevenClock\elevenclock\__init__.py", line 91, in updateIfPossible

🟥 socket.gaierror: [Errno 11001] getaddrinfo failed

🟥 Note this traceback was caught by reporter and has been added to the log ([Errno 11001] getaddrinfo failed)
ArthurWolfhound commented 2 years ago

I just found something very, very interesting and both concerning.

If you go to %temp% and take a look at folders, you will see a lot of them named _MEI... where ... is random number. And now, restart ElevenClock using built-in restart button.

Observe, you have another folder created just now (you can actually see it, sort by "Date modified"). Your application writes it's environment every reload, creating a 105MB folder. I already have 9 of these inside the %Temp%, but let's think about drive life expectancies, right?

ArthurWolfhound commented 2 years ago

I don't know Python good enough, but I hope it would be possible to move environment required for the application to %userprofile%\.elevenclock as you already using it for config files. By the way, Windows does not respect "The dot convention" so you need to use filesystem attributes to mark the folder as hidden yourself.

marticliment commented 2 years ago

I just found something very, very interesting and both concerning.

If you go to %temp% and take a look at folders, you will see a lot of them named _MEI... where ... is random number. And now, restart ElevenClock using built-in restart button.

Observe, you have another folder created just now (you can actually see it, sort by "Date modified"). Your application writes it's environment every reload, creating a 105MB folder. I already have 9 of these inside the %Temp%, but let's think about drive life expectancies, right?

This is not a thing of my chose, it is how PyInstaller works

marticliment commented 2 years ago

Ok, i think I see what is happening

marticliment commented 2 years ago

Elevenclock has a listener to restart when computer wakes up after going to sleep, and that migth be causing your issue. Gonna add a switch to disable it

marticliment commented 2 years ago

Hi! did the new update fix the issue?

ArthurWolfhound commented 2 years ago

Sorry for long await.

At first it seemed that yes, but I got the same thing once, and then never. So, still in progress I guess.

marticliment commented 2 years ago

ok... Can you try installing Python 3.9 also?

ArthurWolfhound commented 2 years ago

I already have Python 3.10.1 (64bit) installed. Would you like me to install 3.9 specifically?

marticliment commented 2 years ago

Yes, because ElevenClock can't run in python 3.10, PySide2 is not installable there

ArthurWolfhound commented 2 years ago

My PC went to hibernation several times already, and ElevenClock never gave up the error. And I haven't had the chance to install Python 3.9. I am closing this for now, and return if errors will resume.

Thanks.

marticliment commented 2 years ago

Ok