Skip to content

Patch to fix crashes in several applications, such as MPC-HC/VLC/MPV/PowerToys #4819

@clsid2

Description

@clsid2

Before reporting your issue

  • I have confirmed that this issue does not happen when ExplorerPatcher is not installed
  • I do not have "register as shell extension" enabled
  • I have tried my best to check existing issues

Repro ExplorerPatcher versions

N/A

Repro Windows Versions

N/A

3rd party tweak software installed

N/A

Describe the bug

Several applications experience crashes when "Register shell extension" is enabled. Particularly in combination with Simple Window Switcher enabled.

This is a simple patch to prevent ExplorerPatcher from hooking into affected applications. It uses a filename based blacklist, which can easily be expanded with additional apps.

I don't need credit for the patch. So if anyone can commit this or create a PR for this, then great. Saves me hassle of creating one.

Related issue: #4794

From 4bc29bdac36f657af057ffd8e8d2228cbc740f26 Mon Sep 17 00:00:00 2001
From: clsid2 <4704996+clsid2@users.noreply.github.com>
Date: Mon, 5 Jan 2026 00:00:00 +0000
Subject: [PATCH] app blacklist

---
 ExplorerPatcher/dllmain.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/ExplorerPatcher/dllmain.c b/ExplorerPatcher/dllmain.c
index cd6fbd7..01de6dc 100644
--- a/ExplorerPatcher/dllmain.c
+++ b/ExplorerPatcher/dllmain.c
@@ -13097,6 +13097,14 @@ HRESULT EntryPoint(DWORD dwMethod)
     );
     CloseHandle(hProcess);
 
+    // application blacklist
+    TCHAR appblacklist[5][10] = { TEXT("mpc-hc"), TEXT("mpc-be"), TEXT("vlc.exe"), TEXT("mpv.exe"), TEXT("powertoys") };
+    for (int bl = 0; bl < sizeof(appblacklist) / sizeof(appblacklist[0]); bl++) {
+        if (StrStrIW(exePath, appblacklist[bl])) {
+            return E_NOINTERFACE;
+        }
+    }
+
     TCHAR wszSearchIndexerPath[MAX_PATH];
     GetSystemDirectoryW(wszSearchIndexerPath, MAX_PATH);
     wcscat_s(wszSearchIndexerPath, MAX_PATH, L"\\SearchIndexer.exe");
-- 
2.32.0.windows.1

Expected outcome

N/A

Actual outcome

N/A

Additional info

No response

Crash Dumps

No response

Media

No response

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions