|
Post by anixx on Jul 25, 2023 4:25:59 GMT -8
Well if it matters I use it in conjunction with BasicThemer and it works for me. I use classic theme
|
|
|
Post by ephemeralViolette on Jul 25, 2023 4:46:01 GMT -8
I would love to provide support. Most known errors should open a message box dialog, however admittedly I didn't thoroughly test them. If you hadn't enabled the classic theme option as suggested, there would still be a noticeable effect, just that the windows would have basic themed frames instead of classic.
Could you tell me the specific build of Windows you are running? I will check if I can get it working. If you have the required Windhawk setup (standard install as opposed to portable), then the most likely issue you're encountering is it silently failing to download symbols, meaning you need to follow the manual download instructions provided in the mod's README and toggle the mod on and off to restart it. Please tell me if this is the case so I can push a patch, if so.
|
|
|
Post by anixx on Jul 25, 2023 14:25:41 GMT -8
I would love to provide support. Most known errors should open a message box dialog, however admittedly I didn't thoroughly test them. If you hadn't enabled the classic theme option as suggested, there would still be a noticeable effect, just that the windows would have basic themed frames instead of classic.
Could you tell me the specific build of Windows you are running? I will check if I can get it working. If you have the required Windhawk setup (standard install as opposed to portable), then the most likely issue you're encountering is it silently failing to download symbols, meaning you need to follow the manual download instructions provided in the mod's README and toggle the mod on and off to restart it. Please tell me if this is the case so I can push a patch, if so.
Microsoft Windows [Version 10.0.22000.1641]
I used this BadApp program. After clicking on "hang" the frame is not classic-themed. The option "classic theme" doed not affect anything
|
|
|
Post by ephemeralViolette on Jul 25, 2023 17:13:17 GMT -8
I would love to provide support. Most known errors should open a message box dialog, however admittedly I didn't thoroughly test them. If you hadn't enabled the classic theme option as suggested, there would still be a noticeable effect, just that the windows would have basic themed frames instead of classic.
Could you tell me the specific build of Windows you are running? I will check if I can get it working. If you have the required Windhawk setup (standard install as opposed to portable), then the most likely issue you're encountering is it silently failing to download symbols, meaning you need to follow the manual download instructions provided in the mod's README and toggle the mod on and off to restart it. Please tell me if this is the case so I can push a patch, if so.
Microsoft Windows [Version 10.0.22000.1641]
I used this BadApp program. After clicking on "hang" the frame is not classic-themed. The option "classic theme" doed not affect anything
I managed to get it working on a fresh install following the standard setup procedure. Ignore the graphical issue in the screenshot; that only occurs because I didn't fully enable classic theme in the VM.
Please check the following:
- That you are running the standard version of Windhawk, which uses a service to startup. It is impossible to modify DWM with the portable version of Windhawk due to extra protections Microsoft put on the process.
- The most likely scenario is that you haven't allowed Windhawk to inject into system processes. This option is hidden deep inside the Windhawk settings, so you have to open a few menus to get to it. You have to go to Settings -> Advanced settings -> More advanced settings, and it should be at the very bottom of that dialog. You can confirm that this is the case if you go to edit mod, enable logging, open the log window, and then toggle the mod on and off to restart it. If it is injecting into DWM at all, you should see a message pop up saying "Init dwm-ghost-mods version 1.1", informing you that the mod is trying to be loaded into DWM.
- If that doesn't work, try manually downloading the symbols as detailed in the README. The downloaded folder should be merged such that you have a folder called dwmghost.pdb containing a folder that has a MD5 hash as a name that has a file called dwmghost.pdb. This entire thing should go in C:\ProgramData\Windhawk\Engine\Symbols. If you enabled logging and this action is required, then you will see an init message and no subsequent messages.
|
|
|
Post by anixx on Jul 25, 2023 23:51:46 GMT -8
Wait, are you injecting into DWM? It is disabled by default in Windhawk (injecting all system processes is disabled). If I enable it, the system is not bootable.
|
|
|
Post by OrthodoxWin32 on Jul 26, 2023 0:49:08 GMT -8
Wait, are you injecting into DWM? It is disabled by default in Windhawk (injecting all system processes is disabled). If I enable it, the system is not bootable. Usually this happens if you are using a mod that crashes a critical process. I had recently tried with this mod (which you shared previously) : // ==WindhawkMod== // @id classic-browser-fix // @name Unthemed+Nocomposition // @description Removes composition from windows and sets Light window frame // @version 0.1 // @include msedge.exe // @include chrome.exe // @compilerOptions -luxtheme // ==/WindhawkMod==
#include <uxtheme.h>
BOOL Wh_ModInit() { Wh_Log(L"Init"); SetThemeAppProperties(0); return TRUE; }
I had launched this mod at startup, with the injection in all the processes. So modifying : // @include msedge.exe
// @include chrome.exe To :
// @include * This works fine without injecting critical processes, but crashes the system otherwise.
So, your problem may be related (I haven't tested it) to this mod, which affects all processes :
// ==WindhawkMod== // @id classic-browser-fix // @name Unthemed+Nocomposition // @description Removes composition from windows and sets Light window frame // @version 0.1 // @include msedge.exe // @include chrome.exe // @compilerOptions -luxtheme // ==/WindhawkMod==
#include <uxtheme.h>
BOOL Wh_ModInit() { Wh_Log(L"Init"); SetThemeAppProperties(0); return TRUE; }
I told the Windhawks developer about the problem, he advised me to find the process that is crashing the system, and add it to the mod's exclusion list. The challenge seems to be to find the process responsible for the crash. Afterwards, your problem may be related to another mod, I'm not sure what I'm saying.
|
|
|
Post by ephemeralViolette on Jul 26, 2023 3:06:29 GMT -8
Wait, are you injecting into DWM? It is disabled by default in Windhawk (injecting all system processes is disabled). If I enable it, the system is not bootable. Yes, this is only possible by injecting into DWM.
The instability you describe is most definitely caused by another mod, and is most likely caused by a mod that sets classic theme like the one OrthodoxWin32 described; in fact, attempting to use classic theme at all in DWM is likely to cause it to crash (I could only get it working by disabling themed frames, but controls always seemed to crash). You will need to exclude such a mod from injecting into DWM as well. The only reason something like ClassicThemeTray works is because the theme stays loaded in DWM for the duration of its lifetime. In fact, you may notice that DWM will fail to restart if you have ClassicThemeTray running for this very reason, because DWM relies on the theme engine for storing and loading its graphical resources.
You don't have to modify the source code of a mod to change its injection list. I recommend that you add any custom exclusions to the list in the advanced tab of the mod, since this will still enable you to receive updates for the mod and will persist after them.
If you could provide a list of mods that you use, I could hopefully provide further assistance.
|
|
|
Post by OrthodoxWin32 on Jul 26, 2023 4:04:51 GMT -8
This is strange, because I'm on a version of Windows that has been tested (Windows 10 21H2).
This window is not in the classic theme because Windhawks loads before the scheduled task of the ClassicThemeTray, the rest of the system is in the classic theme.
|
|
|
Post by OrthodoxWin32 on Jul 26, 2023 4:24:11 GMT -8
For the problem of mods bringing the classic theme, it's solved on my side. I added DWM to the exclusion list of both mods, and I no longer have the crash.
|
|
|
Post by ephemeralViolette on Jul 26, 2023 5:02:08 GMT -8
This is strange, because I'm on a version of Windows that has been tested (Windows 10 21H2).
This window is not in the classic theme because Windhawks loads before the scheduled task of the ClassicThemeTray, the rest of the system is in the classic theme.
Does dwmghost.dll exist in System32? I know that this DLL never existed before Windows 10, but I went with the assumption all versions after 10.0.10240 would have it. Perhaps you do not have it.
If the file indeed exists, then there is likely something wrong with the version check function IsWindows10OrGreater(), which is checked on line 408. If the file exists, try changing the line to:
if (TRUE) and if it does not exist, try changing it to:
if (FALSE)
I have implemented it in this manner to prevent it from logging an error in Windhawk, but if you're encountering troubles with this, then I will fix this check in a future version. Either way, please report back to me your findings.
I'm not sure why you would have issues with a tested version, but sometimes the patch updates can change behaviour. Come to think of it, are you sure you didn't delete dwmghost.dll as an earlier solution? That was the advice I heard around, but I never liked it because it prevented programs from ghosting entirely, which is why I made this. It's possible that the reason it can't find this library which should be loaded into DWM is because you forgot to restore it after applying such a modification.
By the way, the window is not in classic theme because it is a child of DWM, not necessarily because Windhawk loads before ClassicThemeTray. Non-system tasks, even if they're running as administrator, cannot modify DWM child windows, which is the premise of this mod itself.
|
|
|
Post by OrthodoxWin32 on Jul 26, 2023 5:14:04 GMT -8
I'm not sure why you would have issues with a tested version, but sometimes the patch updates can change behaviour. Come to think of it, are you sure you didn't delete dwmghost.dll as an earlier solution? That was the advice I heard around, but I never liked it because it prevented programs from ghosting entirely, which is why I made this. It's possible that the reason it can't find this library which should be loaded into DWM is because you forgot to restore it after applying such a modification.
Yes, I had renamed DWMGhost.exe in the past, and had forgotten. Thanks, now it works.
|
|
|
Post by OrthodoxWin32 on Jul 26, 2023 10:31:09 GMT -8
Classic Theme Explorer by Cynosphere Description: ExplorerPatcher's "Classic Theme Mitigations" and SimpleClassicTheme.FileExplorerHook as a Windhawk Mod For some reason, this mod (as does the ExplorerPatcher version) displays the taskbar icons incorrectly if the labels are hidden. I reported that here. I tried to modify the mod to correct this problem, and I discovered the responsible section. So, I separated the code into two parts. On the other hand, not activating the part responsible for the bug makes the taskbar less wide, which poses a problem with the board if 16x16 icons are used. Moreover, if this part is not activated you must activate BasicThemer in the background to have a correct result. I advise to activate BasicThemer5, because it is the lightest. classic-theme-explorer.c (32.04 KB)
|
|
AnyKey
Sophomore Member
Posts: 248
OS: Windows 10 Pro 22H2
Theme: XP Classic Theme
CPU: AMD Ryzen 7 3700X
RAM: 16 GB 1333 MHz DDR4
GPU: Nvidia Geforce RTX 2070 Super
|
Post by AnyKey on Aug 11, 2023 18:16:52 GMT -8
DWM crashes at every logon when I have Inject into critical system processes enabled. I struggled and found out a mod Classic File Picker crashes DWM. Exclude dwm.exe for that mod to prevent the mod from being injected into DWM and crash. Unrelated to crash but I suggest to exclude dwm.exe for Disable DWM Extended Frames as well. It doesn't let Frost behaviour work for some reason.
For your information, I tested this mod and confirmed to work on Windows 11 21H2 (build 22000).
|
|
|
Post by ephemeralViolette on Sept 9, 2023 13:01:47 GMT -8
A common issue that people have since Windows 8 is that maximized windows have their borders (which they would have when not maximized) remain there, and spill over to other monitors. This created an abrasive and undesirable effect. The reason that this occurs is because modern classic theme methods rely on keeping DWM around, and DWM does not specially account for clipping maximized windows, unlike the legacy window manager in Win32k. Basic themers, which simply make windows use their UxTheme window frames by telling DWM to stop adding its own, don't have this issue; UxTheme uses the standard SetWindowRgn API, which DWM supports, in order to clip the window. To fix classic theme, I simply intercept the window procedures of all windows and I make it clip the frame borders out using this same SetWindowRgn API.
|
|
|
Post by ephemeralViolette on Sept 9, 2023 13:24:23 GMT -8
I made two that I posted here before, but it would be nice to merge them into this thread for easy access:
|
|
|
Post by anixx on Sept 9, 2023 23:35:16 GMT -8
Does it need DWM injection (inject critical processes in Windhawk option)?
|
|
|
Post by s34642542 on Sept 10, 2023 2:00:32 GMT -8
You are truly doing the Lord's work. Thanks!
|
|
|
Post by ephemeralViolette on Sept 10, 2023 12:31:34 GMT -8
Does it need DWM injection (inject critical processes in Windhawk option)? No. This injects into each running process separately. Although I suppose it could have been done with DWM hooking (perhaps with fewer caveats as well), I prefer to avoid that whenever possible.
|
|
vistalover07
Sophomore Member
Posts: 179
OS: Project 2000
Theme: Constantly Changing/Maple
CPU: Intel I5-10400f/Celeron N3350
RAM: 16gb/4gb
GPU: RTX 3060 12GB/Intel HD Graphics 500
Computer Make/Model: ASUS X541NA
|
Post by vistalover07 on Sept 11, 2023 0:24:43 GMT -8
With all these mods my windows 11 system crashed
|
|
|
Post by OrthodoxWin32 on Sept 11, 2023 0:49:18 GMT -8
With all these mods my windows 11 system crashed It's probably because a mod crashed the system. Is the “inject into critical processes” option enabled ?
|
|