Auto Clicker Pro is a lightweight Windows desktop utility built with C# and WPF (.NET Framework 4.8) for automating mouse clicks.
It supports fixed-interval or human-like randomized timing, clicking at a picked screen location or wherever the cursor currently is, sending clicks directly to a background window without stealing focus, and a fully customizable global hotkey — all wrapped in a clean, frameless, modern UI.
- Configurable click interval — set the delay between clicks in hours, minutes, seconds, and milliseconds.
- Randomized (human-like) timing — add a ± percentage variance to the interval so clicks don't land at perfectly robotic, identical intervals.
- Two cursor modes — click at your current mouse position, or use Pick Location to click anywhere on screen and lock in exact X/Y coordinates via a full-screen crosshair overlay.
- Background clicking — target a specific open window from a live, refreshable window list and send clicks directly to it via Windows messages, without moving your cursor or stealing focus from other apps.
- Mouse button & click type — choose Left, Right, or Middle click, and Single or Double click.
- Flexible repeat modes — repeat a fixed number of times, or run continuously until stopped.
- Global hotkey — assign any key (default
F6) to Start/Stop the clicker instantly, even while the app isn't focused. - Stay on top — optionally keep the window pinned above all other applications.
- Contextual help — built-in "?" info dialogs explain the randomizer, background clicking, and hotkey behavior in plain language.
- Custom window chrome — frameless, draggable title bar for a clean, modern look.
- Windows 7 SP1 or later (Windows 10/11 recommended)
- .NET Framework 4.8 (typically pre-installed on modern Windows)
- Visual Studio 2019/2022 with the .NET desktop development workload (only required to build from source)
- Clone the repository:
git clone https://github.com/xecvas/AutoClicker.git cd AutoClicker - Open
Auto Clicker.slnin Visual Studio. - Build the solution (
Ctrl+Shift+B) or publish aReleasebuild. - Run
Auto Clicker.exefrombin/Release(orbin/Debug).
Alternatively, download the latest pre-built executable from the Releases page and run Auto Clicker.exe directly — no installation required.
- Launch Auto Clicker Pro.
- Set your Click Interval (hours/minutes/seconds/milliseconds), and optionally enable Randomize Interval with a ± percentage for more human-like timing.
- Choose a Cursor Position mode: Current location, or click Pick Location and then click anywhere on screen to lock in fixed X/Y coordinates.
- To click a specific app without switching to it, select it from the Target Window list (click 🔄 to refresh) and enable Run in background.
- Set your Click Options — mouse Button (Left/Right/Middle) and click Type (Single/Double).
- Choose a Click Repeat mode — a fixed number of times, or until stopped.
- Click the hotkey box next to Hotkey and press any key to reassign it (default
F6). - Click Start (or press your hotkey) to begin. Click Stop (or press the hotkey again) at any time — this also works while the app is minimized or not focused.
Auto Clicker/
├── Models/
│ └── WindowInfo.cs # Represents an open window (handle, title, process name)
├── Native/
│ └── NativeMethods.cs # Centralized P/Invoke declarations for user32.dll
├── Services/
│ ├── AutoClickerService.cs # Core clicking engine — thread-safe, cancellable, async
│ └── WindowService.cs # Enumerates open, visible windows for the target list
├── assets/ # App icon
├── App.xaml / App.xaml.cs # Application entry point
├── InfoWindow.xaml / .xaml.cs # Reusable "?" info dialog
└── MainWindow.xaml / .xaml.cs # Main UI and interaction logic
- C# / WPF on .NET Framework 4.8
- Native user32.dll P/Invoke —
mouse_event,PostMessage,RegisterHotKey,EnumWindows,GetCursorPos/SetCursorPos, and related Win32 APIs for simulating clicks and capturing the global hotkey System.Threading.Tasks— cancellable, non-blocking background clicking loopSystem.Diagnostics— resolving process names for the target window list
Contributions are welcome! If you'd like to contribute:
- Fork the repository.
- Create a feature branch (
git checkout -b feature/my-feature). - Commit your changes (
git commit -m "Add my feature"). - Push to the branch (
git push origin feature/my-feature). - Open a Pull Request.
Please keep changes consistent with the existing .NET Framework 4.8 / WPF target and avoid introducing dependencies on newer .NET runtimes.
This project is licensed under the terms found in LICENSE.txt.
Created with ❤️ by xecvas
