SendKeys is a Rainmeter plugin that enables users to simulate keypresses directly from their Rainmeter skins. This plugin provides a flexible and powerful way to trigger keyboard inputs, automate workflows, and enhance interactivity in your Rainmeter setups.
- Simulate Keypresses: Send single keys, key combinations, or sequences of keys using customizable configurations.
- Custom Delays: Configure delays between simulated key sequences to fine-tune the timing of automated inputs.
- Wide Range of Supported Keys: Support for standard keys, function keys, media keys, and more.
- Flexible Commands: Trigger keypress simulations dynamically using Rainmeter bangs.
- Error Logging: Debugging logs to ensure proper configuration and usage.
- Download the compiled
SendKeys.dll
plugin file. - Place the
SendKeys.dll
file into thePlugins
folder of your Rainmeter installation (typically located inC:\Program Files\Rainmeter\Plugins
). - Restart Rainmeter to load the plugin.
In your Rainmeter skin, define a measure using the SendKeys
plugin and configure the following options:
[MeasureSendKeys]
Measure=Plugin
Plugin=SendKeys
Keys=Ctrl+Alt+Delete ; Define the keys to simulate
Delay=500 ; Delay (in milliseconds) between key groups
Use the !CommandMeasure
bang to trigger key simulations. Example:
[SendKeyAction]
LeftMouseUpAction=[!CommandMeasure "MeasureSendKeys" "Send"]
Parameter | Description | Example |
---|---|---|
Keys |
Specifies the keys to simulate. Supports combinations (e.g., Ctrl+Alt+Delete ) and sequences (e.g., A B C ). |
Ctrl+Shift+T |
Delay |
Time delay (in milliseconds) between each key sequence. Defaults to 0 . |
500 |
Here is the full list of supported keys:
Ctrl
,Shift
,Alt
LWin
,RWin
F1
toF12
Tab
,Enter
,Escape
,Space
,Backspace
,Delete
,Insert
Home
,End
,PageUp
,PageDown
Left
,Up
,Right
,Down
A
toZ
0
to9
Num0
toNum9
NumMultiply
,NumAdd
,NumSeparator
,NumSubtract
,NumDecimal
,NumDivide
VolumeMute
,VolumeDown
,VolumeUp
NextTrack
,PreviousTrack
,Stop
,PlayPause
Semicolon
,Equal
,Comma
,Dash
,Period
,Slash
,Backtick
LeftBracket
,Backslash
,RightBracket
,Quote
BrowserBack
,BrowserForward
,BrowserRefresh
,BrowserStop
BrowserSearch
,BrowserFavorites
,BrowserHome
PrintScreen
,Pause
,ScrollLock
,Apps
,Sleep
,Clear
Here is an example Rainmeter skin using SendKeys:
[Rainmeter]
Update=1000
DynamicWindowSize=1
[MeasureSendKeys]
Measure=Plugin
Plugin=SendKeys
Keys=Ctrl+Shift+N
Delay=100
[SendKeyAction]
LeftMouseUpAction=[!CommandMeasure "MeasureSendKeys" "Send"]
[Button]
Meter=String
Text="Send Keys"
SolidColor=100,100,100,255
FontColor=255,255,255
Padding=10,10,10,10
LeftMouseUpAction=[!CommandMeasure "MeasureSendKeys" "Send"]
- If no keys are defined, a log entry will be created:
"SendKeys.dll: No Keys parameter provided." - If an unknown key is specified, the plugin will log:
"SendKeys.dll: Unknown key ''."
Logs can be reviewed in the Rainmeter log window (Ctrl + L
).
- This plugin uses the
user32.dll
API, so it might require elevated permissions for certain keypress simulations. - Simulating certain reserved keys or combinations (like
Ctrl+Alt+Delete
) might not work depending on system restrictions.
Contributions are welcome! To contribute:
- Fork this repository.
- Create a feature branch.
- Submit a pull request with detailed notes about your changes.
This project is licensed under the Apache License. See the LICENSE
file for more details.
- Developed by Nasir Shahbaz.
- Powered by the Rainmeter platform.
If you have any questions or need help, feel free to open an issue or reach out!