How yahel150/winhook-lab works
WinHook-Lab is a collection of independent Windows C++ experiments that alter classic desktop games and utilities through injected hooks or an on-disk executable patch. The principal workflow is to launch a target, load a hook where applicable, and change behavior as the target processes messages, draws, or updates game state. The README documents the major examples; sampled source confirms several hook implementations and the Solitaire injector, but not every example’s injector or patch implementation, so those links are limited to documented behavior.
Main entry points: dllmain.cpp Color Hook · winmineHook.cpp Auto-Flag Hook · SolitaireHook.cpp Solitaire Hooks · injector.cpp Color Injector
Components 20
Calculator Experiments
- Calculator
CalculatorKeypad/calc.exe - Keypad Hook
CalculatorKeypad/CalculatorKeypadHook.cpp - Calculator
ChangeColorCalc/calc.exe - Color Hook
ChangeColorCalc/ColorDll/dllmain.cpp - Color Injector
ChangeColorCalc/injector.cpp - Calculator
ReverseTextCalc/calc.exe - Reverse Text Hook
ReverseTextCalc/reverseText.cpp
Notepad Experiment
- Notepad
PeterPan/notepad.exe - Peter Pan Hook
PeterPan/PeterPanDll/dllmain.cpp - Peter Pan Text
PeterPan/PeterPan.txt
Minesweeper Experiments
- Minesweeper
winmine/winmine.exe - Auto-Flag Hook
winmine/winmineHook.cpp - Minesweeper Injector
winmine/injector.cpp - Patched Minesweeper
Winmine-NoLoseMod/winmineModified.exe - Original Minesweeper
Winmine-NoLoseMod/winmine.exe
Solitaire Experiment
- Solitaire
SolitaireHook/sol.exe - Solitaire Hooks
SolitaireHook/SolitaireHook.cpp - Solitaire Injector
SolitaireHook/injector.cpp
Other components
- User
- Windows APIs
Connections 30
- User → Color Injector: starts
- Color Injector → Calculator: launches suspended
- Color Injector → Color Hook: loads remotely
- Color Hook → Calculator: installs hook
- Calculator → Color Hook: dispatches color calls
- Color Hook → Windows APIs: patches SetTextColor
- User → Calculator: uses
- Calculator → Keypad Hook: dispatches text calls
- Keypad Hook → Windows APIs: forwards modified text
- User → Calculator: uses
- Calculator → Reverse Text Hook: dispatches text calls
- Reverse Text Hook → Windows APIs: forwards reversed text
- User → Notepad: types into
- Notepad → Peter Pan Hook: dispatches messages
- Peter Pan Hook → Windows APIs: calls original message API
- Peter Pan Hook → Peter Pan Text: reads characters
- User → Minesweeper Injector: starts
- Minesweeper Injector → Minesweeper: launches suspended
- Minesweeper Injector → Auto-Flag Hook: loads remotely
- Auto-Flag Hook → Minesweeper: installs hook
- Minesweeper → Auto-Flag Hook: dispatches updates
- Auto-Flag Hook → Windows APIs: calls UpdateWindow
- User → Patched Minesweeper: launches directly
- Original Minesweeper → Patched Minesweeper: patched on disk
- User → Solitaire Injector: starts
- Solitaire Injector → Solitaire: launches suspended
- Solitaire Injector → Solitaire Hooks: loads remotely
- Solitaire Hooks → Solitaire: installs hooks
- Solitaire → Solitaire Hooks: dispatches API calls
- Solitaire Hooks → Windows APIs: hooks drawing and input