| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Name | Name | Last commit date | ||
|---|---|---|---|---|
A lightweight, configurable keyboard macro automation tool for Windows. Perfect for automated testing and load testing of applications.
Simply double-click build.bat or run it from the command line:
build.batIf you have MinGW-w64 installed:
g++ -o macro_tool.exe macro_tool.cpp -luser32 -std=c++11 -O2 -staticcl macro_tool.cpp user32.lib /Fe:macro_tool.exe /O2pacman -S mingw-w64-x86_64-gccEdit macro.ini or create your own config file with the following commands:
| Command | Syntax | Description |
|---|---|---|
| PAUSE | pause <seconds> | Pause execution for specified seconds |
| PAUSE | pause <min>-<max> | Pause for random seconds within range |
| KEYDOWN | keydown <key> <milliseconds> | Press and hold key for specified milliseconds |
| KEYDOWN | keydown <key> <min>-<max> | Press and hold key for random milliseconds within range |
| KEY | key <key> | Quick key press (50ms default) |
| LOOP | loop <count> | Start a loop block that repeats count times |
| ENDLOOP | endloop | End of loop block |
Letters: A-Z
Numbers: 0-9
Function Keys: F1-F12
Special Keys: SPACE, ENTER, TAB, ESCAPE, BACKSPACE, DELETE, INSERT
Arrow Keys: UP, DOWN, LEFT, RIGHT
Modifier Keys: SHIFT, CTRL, ALT, WIN
Navigation: HOME, END, PAGEUP, PAGEDOWN
Numpad: NUMPAD0-NUMPAD9, MULTIPLY, ADD, SUBTRACT, DECIMAL, DIVIDE
Symbols: COMMA, PERIOD, SEMICOLON, QUOTE, SLASH, BACKSLASH, LEFTBRACKET, RIGHTBRACKET, MINUS, EQUALS, GRAVE
You can use decimal notation for more precise timing:
pause 0.150 # Pause for 150 milliseconds
pause 1.5 # Pause for 1.5 seconds
pause 0.05-0.15 # Random pause between 50-150ms# Simple typing test with fixed timing
pause 2
keydown H 100
keydown E 100
keydown L 100
keydown L 100
keydown O 100
key SPACE
keydown W 100
keydown O 100
keydown R 100
keydown L 100
keydown D 100
keydown ENTER 150
# Your custom macro with random ranges
pause 100
pause 87-130 # Random pause between 87-130 seconds
keydown Y 120-180 # Hold Y for random 120-180ms
pause 4-6 # Random pause between 4-6 seconds
keydown X 150-250 # Hold X for random 150-250ms
# Loop example for stress testing
loop 10
keydown SPACE 100
pause 0.5
endloopRun with default config file (macro.ini):
macro_tool.exeSpecify a different config file:
macro_tool.exe my_custom_macro.iniYou can specify ranges for both pause and keydown commands using the format min-max:
# Fixed timing
pause 5 # Always pause for 5 seconds
keydown A 100 # Always hold A for 100ms
# Random timing
pause 3-7 # Pause for random 3-7 seconds
keydown B 50-150 # Hold B for random 50-150ms# Simulate natural typing rhythm
loop 10
keydown H 60-100 # Variable key press duration
pause 0.08-0.18 # Variable pause between keys
keydown I 55-95
pause 0.07-0.15
endloopCreate a loadtest.ini file:
# Rapid key press test
loop 1000
keydown SPACE 50
pause 0.01
endloop
# Sustained key hold test
loop 50
keydown W 2000
pause 0.5
endloopRun with:
macro_tool.exe loadtest.iniCreate a ui_test.ini file:
# Navigate through menu items
keydown ALT 50
pause 0.1
keydown F 50 # File menu
pause 0.5
keydown DOWN 100
pause 0.2
keydown DOWN 100
pause 0.2
keydown ENTER 100Some applications (especially games with anti-cheat) may block simulated input. Try:
This tool uses Windows SendInput API to simulate keyboard input. Some applications may detect this as automated input. Only use for testing your own applications or with permission.
This tool is provided as-is for testing purposes. Use responsibly and only on applications you have permission to test.
For issues or questions:
| Back | FazBrowse Home | New Git URL |