valinet / ExplorerPatcher

This project aims to enhance the working environment on Windows
GNU General Public License v2.0
22.98k stars 1k forks source link

The hardblock was added to prevent Explorer from crashing when ExplorerPatcher is installed. #3053

Open Michellehdr opened 4 months ago

Michellehdr commented 4 months ago

Hi Team,

The hardblock was added to prevent Explorer from crashing when ExplorerPatcher is installed. You only need to adjust the setup exe name to get around the block in your new version. We will continue to block ANY version that crashes Explorer.

Please let me know if you have any question.

Thanks Michelle

symphony commented 4 months ago

Edit: ignore my post. solved after updating to latest version

Is this why my taskbar is transparent now with win10 style? image

Amrsatrio commented 3 months ago

This issue is not repro with the latest prerelease on latest 26090 build. I have my changes to make the 11 taskbar the default on all Windows 11 versions unpushed.

Michellehdr commented 3 months ago

@Amrsatrio please kindly confirm if you received my comment above. Please let me know if you have any question. Thanks a lot!

pyrates999 commented 3 months ago

Hi @Michellehdr as I'm not one of the developers here, I'll let @Amrsatrio reply to this :)

dxgldotorg commented 3 months ago

As for code removal, is @Michellehdr digging in their heels about not allowing moving or resizing the Taskbar?

Amrsatrio commented 3 months ago

Hi @Michellehdr, I'm here to let you know that I've received your comment. Sorry for taking a while, I've been having other errands lately. I will make a new release today or tomorrow to make the Windows 10 taskbar no longer an option when run on 26002+.

Michellehdr commented 3 months ago

@Amrsatrio thanks for the update. Looking forward to the new release. And long termly, it will be great if you could update the app to stop using undocumented code to prevent current and future issues.

dxgldotorg commented 3 months ago

Since the legacy Explorer Taskbar has been killed off, please consider feedback that re-enables more Windows 10 Taskbar features, especially resizing and moving the Taskbar.

Most people have widescreen displays, and some have ultrawide displays, and thus vertical space is a bit more at a premium, hence why some people like to put their Taskbar on the side of the display.

Amrsatrio commented 3 months ago

Hi, sorry for taking so long. I have pushed the code where the 10 taskbar is no longer available on 26002 to comply with your decisions. It would be very great if versions 22621.3527.65.1 and above can be whitelisted.

Feel free to close this issue if the 65.1 no longer causes crashes on unreleased GE builds.

Bec-de-Xorbin commented 3 months ago

Hi, sorry for taking so long. I have pushed the code where the 10 taskbar is no longer available on 26002 to comply with your decisions. It would be very great if versions 22621.3527.65.1 and above can be whitelisted.

Feel free to close this issue if the 65.1 no longer causes crashes on unreleased GE builds.

@Amrsatrio If you read the opening post carefully, they said that you'll just need to rename the ep_setup.exe to something else to lift the block. As far as I can see the new release is still ep_setup.exe. Also it seems that they have retracted the claim that Win10 taskbar code is removed, at least it doesn't appear anymore on the edited post... So as long as it doesn't crash it can inculde the Windows 10 taskbar code.

dxgldotorg commented 3 months ago

Hi, sorry for taking so long. I have pushed the code where the 10 taskbar is no longer available on 26002 to comply with your decisions. It would be very great if versions 22621.3527.65.1 and above can be whitelisted. Feel free to close this issue if the 65.1 no longer causes crashes on unreleased GE builds.

@Amrsatrio If you read the opening post carefully, they said that you'll just need to rename the ep_setup.exe to something else to lift the block. As far as I can see the new release is still ep_setup.exe. Also it seems that they have retracted the claim that Win10 taskbar code is removed, at least it doesn't appear anymore on the edited post... So as long as it doesn't crash it can inculde the Windows 10 taskbar code.

That would explain why the new version blew up when I tried and that I had to rename the uninstaller to get rid of it. But then, I'm on build 26200 Canary, and more legacy code may have been ripped out of Explorer.

Amrsatrio commented 3 months ago

@Bec-de-Xorbin I will consider this later.

Also it seems that they have retracted the claim that Win10 taskbar code is removed, at least it doesn't appear anymore on the edited post

I have confirmations that EP and StartAllBack are being blocked due to fighting the DisableWin10Taskbar feature flag. Now in EP the Windows 10 taskbar option is no longer here, so is the code that fights DisableWin10Taskbar.

The system tray-less Windows 10 taskbar code still exists in the latest GE builds, but they still have DisableWin10Taskbar crash bombs sprinkled all over the constructors of various Windows 10 taskbar-related classes, and again, Microsoft isn't happy when someone tries to defuse the bombs for the masses.

VaiCaDep0893 commented 2 months ago

we can simply just replace windows 11's explorer with windows 10's to have the old taskbar again

Amrsatrio commented 2 months ago

@VaiCaDep0893 Stability wise I disagree. Doesn't work if you have more than one input languages.

dxgldotorg commented 2 months ago

@VaiCaDep0893 Stability wise I disagree. Doesn't work if you have more than one input languages.

Not to mention that Microsoft would probably frown on this project contining Microsoft-owned files.

David-Castro commented 2 months ago

i do have a backup of windows 11 explorer 22h2 use that while you can explorer.zip

pyrates999 commented 2 months ago

Where would this explorer.exe go?

Also, be wary of anyone sending you an executable. Don't just run it or add it to your OS.

markran commented 2 months ago

If this means there won't be any way to have to get the taskbar on Win11 on the side as well as all the other functionality MSFT has chosen to remove (Quick Launch, etc), then Windows 11 will no longer be usable at our company.

Due to the uncertainty around MSFT's intentions to fulfill their earlier promises about implementing full taskbar functionality in Win11 we've avoided upgrading our computers. Unfortunately, our IT vendor is only offering laptops with Win11 recently. Prior to deployment we'll need to downgrade all new laptops to a Win10 Long Term Maintenance version or the last Win11 version that can be made usable with ExplorerPatcher (and then freeze them on that version).

Does anyone know the final working version of Windows 11?

David-Castro commented 2 months ago

Where would this explorer.exe go?

Also, be wary of anyone sending you an executable. Don't just run it or add it to your OS.

the explorer.exe goes into the C:\WINDOWS folder. also, the explorer.exe (22H2 Windows 11) was taken from my system and verified with virustotal, so no virus was detected. see here for analysis: https://www.virustotal.com/gui/file/698e8a2eabad13876d0af28e82129e47a9cb24f31d6d287dc00d2c1929ed04b5

David-Castro commented 2 months ago

If this means there won't be any way to have to get the taskbar on Win11 on the side as well as all the other functionality MSFT has chosen to remove (Quick Launch, etc), then Windows 11 will no longer be usable at our company.

Due to the uncertainty around MSFT's intentions to fulfill their earlier promises about implementing full taskbar functionality in Win11 we've avoided upgrading our computers. Unfortunately, our IT vendor is only offering laptops with Win11 recently. Prior to deployment we'll need to downgrade all new laptops to a Win10 Long Term Maintenance version or the last Win11 version that can be made usable with ExplorerPatcher (and then freeze them on that version).

Does anyone know the final working version of Windows 11?

Probably 23H2, because i haven't had any issues running it.

pyrates999 commented 2 months ago

Still recommend against it.

David-Castro commented 2 months ago

Still recommend against it.

it's the only way

pyrates999 commented 2 months ago

That's not secure to accept executables from strangers.

dxgldotorg commented 2 months ago

Still recommend against it.

it's the only way

Still, EP needs to put out a build that is fully 26100 compliant to be exempted from the block, and the option of injecting older builds of copyrighted MS binaries is probably not all that legal.

pyrates999 commented 2 months ago

I don't think MS would even like that if EP did that.

vlascik commented 2 months ago

How about adding a function to backup the system's current explorer.exe. After a new version without Taskbar10 gets shipped, just ask to overwrite it from a backup. License-wise, it's a clean approach, and keeps the functionality.

Also, fsck what MSFT likes, some of their recent decisions (e.g. killing off WSA after getting it almost perfect, but way before it had a real chance to catch on) are just mind-bogglingly stupid.

Amrsatrio commented 2 months ago

@vlascik Nuh uh. It's not as modular as you thought.

vlascik commented 2 months ago

@vlascik Nuh uh. It's not as modular as you thought.

It seems to be. Saw this video yet? https://www.youtube.com/watch?v=52YV657Rd1Q

morrow95 commented 2 months ago

Reading over this and seems like the Win 10 taskbar is gone from here on out - is that correct? My main reason for using it all this time was the ability to NOT group windows which is something that is standard with Win 11. Not sure if anyone else deals with this, but for me personally and the work I do, it is a huge pita when taskbar icons are grouped together. Have to hover over, figure out which window from the popups I actually want given the small thumbnail previews, and so on - not productive at all for me at least.

If the Win 10 taskbar is removed is there any possibility of an 'ungrouping' option for the Win 11 taskbar?

dxgldotorg commented 2 months ago

Reading over this and seems like the Win 10 taskbar is gone from here on out - is that correct? My main reason for using it all this time was the ability to NOT group windows which is something that is standard with Win 11. Not sure if anyone else deals with this, but for me personally and the work I do, it is a huge pita when taskbar icons are grouped together. Have to hover over, figure out which window from the popups I actually want given the small thumbnail previews, and so on - not productive at all for me at least.

If the Win 10 taskbar is removed is there any possibility of an 'ungrouping' option for the Win 11 taskbar?

The ungrouping options were added back in either 23H2 or 22H2.

Azarien commented 2 months ago

Classic taskbar is the main reason I use ExplorerPatcher. If Win10 taskbar is gone for good, I will have to find an alternative, be it going back to Windows 10 until there's a good solution to the taskbar problem.

What I specifically rely on is a taskbar with small icons, labels, no grouping, and resizeable to mutiple rows (I use 2 or 3 rows).

jerl0 commented 2 months ago

Classic taskbar is the main reason I use ExplorerPatcher. If Win10 taskbar is gone for good, I will have to find an alternative, be it going back to Windows 10 until there's a good solution to the taskbar problem.

What I specifically rely on is a taskbar with small icons, labels, no grouping, and resizeable to mutiple rows (I use 2 or 3 rows).

Same here.

pyrates999 commented 2 months ago

@vlascik Nuh uh. It's not as modular as you thought.

It seems to be. Saw this video yet? https://www.youtube.com/watch?v=52YV657Rd1Q

That is for an advanced user and to me looks like it will cause your windows OS to break the moment a windows update is released that replaces explorer.exe. So I don't think that will ever be implemented in EP because of the amount of bugs that it will cause with future windows updates.

vlascik commented 2 months ago

That is for an advanced user and to me looks like it will cause your windows OS to break the moment a windows update is released that replaces explorer.exe. So I don't think that will ever be implemented in EP because of the amount of bugs that it will cause with future windows updates.

Copying a file is not an "advanced operation" for "advanced user". I would also congratulate you on having a crystal ball and seeing a future so clearly, but everything ExplorerPatcher does breaks with Windows updates already (that is why they patch insider versions). I would even go on saying that replacing one exe file with an older version (an original file made and signed by Microsoft too) is way less invasive than what EP does at the moment.

pyrates999 commented 2 months ago

The source code for EP is available. So feel free to try to add this feature.

vlascik commented 2 months ago

The source code for EP is available. So feel free to try to add this feature.

Thanks for letting me.

morrow95 commented 2 months ago

The ungrouping options were added back in either 23H2 or 22H2.

@dxgldotorg - I had no idea they added this feature in. It had been soo long since release I stopped bothering to check.

Amrsatrio commented 2 months ago

@vlascik Let me explain. The taskbar uses a LOT of private APIs, such as APIs for virtual desktop and input switch manager. Some of those like the ones I mentioned change frequently between major updates, and if APIs mismatch a crash can of course happen. In that video you can observe that the input switch popup is misplaced and misconfigured, as well as the text in the language button being 90°. I even tried using the 19045 explorer on my 22621 machine, it simply didn't work maybe because I have Japanese IMEs in my input languages. Not to mention, UWP apps do not appear in the task list. This is certainly not an ideal experience for normal users who do not know too much stuff about Window shell's innards.

If it somehow works on one version, of course a change in the virtual desktops API or something in a monthly update can break the entire thing, so that's why I said "Nuh uh." Understood?

vlascik commented 2 months ago

@Amrsatrio the goal could be to use Windows 11 explorer (the last version that works with EP) on Windows 11. Yes, the APIs might drift over time, but it also might work for years just fine. Which might be just enough for MSFT to fix their taskbar.

I've checked the video and haven't seen anything wrong with the input panel, but even if it there was, who cares, it's a cosmetic problem and there's always alt+shift.

All in all, Windows 10 explorer.exe got its last update 2 years ago (last feature work was probably done 3-4 years ago too), and it still works well enough (outside Japan anyway). The situation will be better with Windows 11 explorer.

So. If the choices are having nothing or a mild discomfort of slightly outdated explorer.exe, I'd chose the mild discomfort. This could be a way to stretch this project for couple more years further.

But, as always, as maintainers you're free to kill this project at this point too. ¯_(ツ)_/¯.

Amrsatrio commented 2 months ago

@vlascik Let's talk about this further in private through our Discord.

https://discord.gg/gsPcfqHTD2

hondacbr600 commented 2 months ago

Classic taskbar is the main reason I use ExplorerPatcher. If Win10 taskbar is gone for good, I will have to find an alternative, be it going back to Windows 10 until there's a good solution to the taskbar problem.

What I specifically rely on is a taskbar with small icons, labels, no grouping, and resizeable to mutiple rows (I use 2 or 3 rows).

Same.

dxgldotorg commented 2 months ago

The ungrouping options were added back in either 23H2 or 22H2.

@dxgldotorg - I had no idea they added this feature in. It had been soo long since release I stopped bothering to check.

I personally enabled it the instant it appeared in Insider Preview. Also set multiple monitor taskbars to show the buttons on the taskbar where window is open.

Maxstate69 commented 2 months ago

Can someone explain to me what's going on, in very basic terms? I am interested in learning but the conversation is a bit too high level.

Amrsatrio commented 2 months ago

@Maxstate69

  1. Microsoft removed the system tray from the old taskbar in 25921, suggesting that they're killing the old taskbar in the latest Windows 11 builds.
  2. Microsoft added the DisableWin10Taskbar feature flag in 26002 to further deter 3rd party customization programs from unearthing them. The feature flag (which is enabled by default and can be disabled using ViVeTool) when enabled causes explorer.exe to crash if the code related to the old taskbar is reached. I usually call it "crash bombs".
  3. ExplorerPatcher and StartAllBack introduced code that disarms the bombs, and Microsoft doesn't seem to like it maybe because the disarming code does not work in unreleased builds internal to Microsoft or maybe because Microsoft doesn't want programs to do so in general. This led to Microsoft adding blocks through Program Compatibility Assistant.
  4. ExplorerPatcher removed the code to disarm the bombs and removed the Windows 10 taskbar as an option, followed by StartAllBack doing the same roughly a week later so that Microsoft would reconsider the PCA blocks.

TLDR: It's the time for the 10 taskbar to say goodbye from Windows 11, says Microsoft.

Maxstate69 commented 2 months ago

@Maxstate69

  1. Microsoft removed the system tray from the old taskbar in 25921, suggesting that they're killing the old taskbar in the latest Windows 11 builds.
  2. Microsoft added the DisableWin10Taskbar feature flag in 26002 to further deter 3rd party customization programs from unearthing them. The feature flag (which is enabled by default and can be disabled using ViVeTool) when enabled causes explorer.exe to crash if the code related to the old taskbar is reached. I usually call it "crash bombs".
  3. ExplorerPatcher and StartAllBack introduced code that disarms the bombs, and Microsoft doesn't seem to like it maybe because the disarming code does not work in unreleased builds internal to Microsoft or maybe because Microsoft doesn't want programs to do so in general.
  4. ExplorerPatcher removed the code to disarm the bombs and removed the Windows 10 taskbar as an option, followed by StartAllBack doing the same roughly a week later.

TLDR: It's the time for the 10 taskbar to say goodbye from Windows 11, says Microsoft.

Thank you. That sucks. Can you speculate as to the reason Ms is doing this?

Amrsatrio commented 2 months ago

If you have been reading the news around Windows lately, you will see that Microsoft has been in a nuking spree of legacy components and remnants in Windows 11 24H2.

Maxstate69 commented 2 months ago

Hmm, seems reasonable... Too bad. It would be nice if they left people the choice to use what they want, for instance by putting it back if they want...

pyrates999 commented 2 months ago

Hmm, seems reasonable... Too bad. It would be nice if they left people the choice to use what they want, for instance by putting it back if they want...

Unless it's an option in windows itself, I don't think MS intended anyone to use the windows 10 taskbar in windows 11.

MS also wants to show ads in the start menu, etc and EP bypassed that.

Maxstate69 commented 2 months ago

I understand that and the whole discussion around it, but really, it's my computer and I wish I could do what I wanted with it, whether ms intends as much or not.

I'm a privacy lawyer and am trying to contribute to EU legislators coming down on this sort of behavior. Windows is the de facto standard OS in billions of cases. We should have more control over something that our day to day infrastructure relies upon. We're lucky to have had things like explorerpatcher in the meantime.

In the worst of all possible worlds, I'd love for Ms to just tell me how much they want me to pay for a debloated, af-free, telemetry-free and customizable version of windows. I'll give them what they want and the transaction should be over at that point. But this sort of drug dealer behavior is really not my cup of tea.

Amrsatrio commented 2 months ago

For telemetry, I am sure that it really helps during the development phase of features. But I do not agree if that cannot be completely disabled. The rest, I completely agree with you. I am stuck to Windows due to Fortnite and Genshin not being available on other desktop OSes like MacOS and Linux, but Microsoft's decisions lately has been pushing me to rethink my career on these games.