Windhawk aims to make it easier to customize Windows programs. For more details, see the official website and the announcement.
This repository is used to report issues and to discuss Windhawk. For discussing Windhawk mods, refer to the windhawk-mods repository.
You're also welcome to join the Windhawk Discord channel for a live discussion.
High level architecture:
For technical details about the global injection and hooking method that is used, refer to the following blog post: Implementing Global Injection and Hooking in Windows.
The Windhawk source code can be found in the src
folder, which contains the following subfolders:
-
windhawk
: The code of the mainwindhawk.exe
executable and the 32-bit and 64-bitwindhawk.dll
engine libraries. -
vscode-windhawk
: The code of the VSCode extension that is responsible for UI operations such as installing mods and listing installed mods. -
vscode-windhawk-ui
: The UI part of the VSCode extension.
A simple way to get started is by extracting the portable version of Windhawk with the official installer, building the part of Windhawk that you want to modify, and then replacing the corresponding files in the portable version with the newly built files.
Code which demonstrates the global injection and hooking method that is used can be found in this repository: global-inject-demo.