That is the weird part. My explorer.exe patch to disable flashing taskbar buttons was functioning with Microsoft Defender turned on for the whole lifetime of Windows 10 I used it. I didn't even need a UAC prompt to patch the memory. Nothing detects it, even though it goes and adds assembly instructions to three locations in the memory with WriteProcessMemory etc. It's not working by injecting DLL, it just modifies the running explorer.exe process memory so it will not modify files.
I guess the C version was flagged by defender eventually? Seems to happen at some point with unsigned programs that aren't super popular these days. Using VB6 seems to be a safe bet to end up in defender quarantine. I guess because it was still used for malware a decade ago.
DEP does nothing to prevent OpenProcess() and WriteProcessMemory() from working or prevent applications from loading a dll which reaches into the main process's image to patch it. DEP tries to prevent exploitation from taking place within a single process by ensuring say, a buffer overflow can't just call the value you loaded into your webpage, not running software tampering with the memory of other running software using APIs which allow for the purpose.
Even if the page is marked as non-writable, execute only, you can pause the process, change the permissions and resume it or do it at image load time without issue.
Windows applications using the old/standard win32 api don't have sandboxing between them at all and any application is free to tamper with any other to an almost limitless extent. It's incredibly powerful, in both good and bad ways.
Certain advanced firewall tools with IDS style features can hook these calls and notify you when an application is attempting to do something like this.
Most troubleshooting involves defeating virus checking and opening up the firewall. It's right up there with clearing your cookies and restarting the machine. It's in all the scripts. Totally routine. Nothing to worry about.
You can see the code here: https://github.com/Ciantic/DisableFlashingTaskbarButtons/tre... (there was also C version but I changed it to AHK)