For users
- Added a changelog tab for mods.
- Added an "Advanced" tab for mods with debug logging functionality, easy settings exporting, and options to override the mod's target processes.
- Added advanced settings with an option to hide the tray icon, an option to exclude processes from Windhawk, and several other options.
- Added the mod initialization dialog, which shows information about mods which take a long time to initialize. A common reason for that is symbol downloading, in which case the download progress is shown.
- Added the Loaded Mods dialog which can be accessed from the tray icon's right click menu.
- Added an exit option without UAC in case something goes wrong, can be used by holding Shift and right clicking on the tray icon.
- Running the Windhawk UI no longer requires UAC.
For developers
- Updated to VSCodium 1.74.2 and LLVM MinGW 15.0.0.
- The compiler now uses C++20 and includes WinRT headers.
- Added mod preview to the editing mode.
- Better syntax highlighting for special Windhawk comment blocks (readme, settings) in the code editor.
- Updated the new mod template, inspired by Kyle Halladay's X64 Function Hooking by Example guide.
- Extended the function hooking API, now hooks can be created and removed at any time.
- Added decorated symbols to the symbols enumeration API.
- Improved editor indentation and formatting rules.
Bug fixes
- Removed the confusing suggestion to download a language pack for non-English Windows versions. Windhawk still doesn't have proper support for localization.
- Improved compatibility with Firefox.
- Fixed an incorrect update notification after updating to the latest version.
- Fixed an incorrect memory free which caused tools such as Application Verifier to show a warning. The bug was harmless in practice aside from the warning with development tools.
- Fixed unnecessary mod reloading if FALSE is returned in Wh_ModInit.
- Updating a disabled mod no longer enables it.