Windows Automation Software – Project Examples

Small Windows tools that take over work that would otherwise be done by hand, day after day: they watch folders and tidy up files, send them by email, extract data from large text files, run Word mail merge or repeat mouse clicks. Each one is built to fit a single workflow and runs unattended, bothering the user only when something goes wrong. I build programs like these as part of my Windows programs and background services development service.

Folder monitoring and file renaming

Built in the fourth quarter of 2021.

Problem

Files were arriving in several folders at once, and each one had to be renamed by a precise rule and then moved to another folder, where the next processing step picked it up. The new name also had to include the exact moment the file arrived in the source folder — down to the second. That information cannot be reliably recorded by hand.

Solution

A Windows tool was built that watches the folders on its own and processes every new file as soon as it appears:

  • simultaneous monitoring of at least ten folders or files;
  • rule-based renaming, with a timestamp of the moment the file was added to the source folder;
  • moving or copying the renamed file to a predefined folder;
  • a simple interface, although the focus was on reliable background operation.

Technologies used

Result

Files reach the destination folder already renamed and carrying their exact arrival time, with nobody involved, so the next processing step always gets what it expects.


Automatic conversion of XML files to CSV and JSON

Built in the fourth quarter of 2020.

Problem

The client was receiving large XML files from various sources — some added, some moved in from other folders — and needed them in CSV or JSON form. Some files arrived corrupted, and those must neither stop the processing of the rest nor get lost among the successfully processed ones.

Solution

A tool with a graphical interface was built that runs the whole flow on its own:

  • constant monitoring of one or more selected folders, whether the XML was added or moved in;
  • instant conversion of every new file to CSV or JSON, according to a choice the user can easily change;
  • sorting after processing: a successfully processed XML goes to the "Processed" folder, a corrupted one to the "Corrupted" folder;
  • a clear interface that shows what is configured and what is happening.

Requirements changed during the work, so the tool went through several rounds of refinement until it covered the client's entire workflow.

Technologies used

Result

Conversion no longer needs any manual action, and corrupted files are set aside so it is immediately clear what needs checking. The client was satisfied with the final tool.


Automatic emailing of new files

Built in the third quarter of 2021.

Problem

Every file, such as a PDF, appearing in a specific folder on the user's computer had to be sent to a predefined address. The process had to be completely invisible to the user except when sending failed, and a sent file must not stay in the folder and be sent again.

Solution

A lightweight Windows 10 program was built that runs in the background:

  • folder monitoring: every new file is detected immediately;
  • sending by email through a Gmail account, to a predefined address;
  • error handling: sending errors are logged, and the user is notified only when sending fails;
  • after sending, the file is either moved to another folder or deleted, as configured;
  • starting with Windows, so the program is always running, even after a restart;
  • settings in a text file, including the account details, so they can be changed without changing the program.

Technologies used

Result

The user simply drops a file into the folder and everything else happens on its own — the program only shows up when there is something that really needs attention.


Extracting data from large text files

Built in the fourth quarter of 2020, as an urgent job.

Problem

The client needed a simple Windows application that reads a plain text file, extracts specific lines from it based on a given delimiter and writes them into a new document. The files were large, and the tool was needed right away.

Solution

A lightweight, fast application was built with a few carefully chosen features:

  • a configuration file where the user sets the default search folder and the delimiter used for extraction;
  • file selection through the standard Windows open dialog;
  • live progress display, separately for reading the file and for generating the new document;
  • delimiter handling: where delimiters follow one another, the application inserts a space automatically, so the output stays readable;
  • printing of the extracted data on a selected printer, without saving a file to disk — no data is left behind and the disk does not fill up.

Technologies used

  • Windows application built for text processing and extraction.
  • Real-time progress tracking while reading and generating the document.

Result

A job that used to mean searching through huge files comes down to choosing a file and a single click.

Client feedback

★★★★★5/5

“Thank you for the great work.”


Running Word mail merge

Built in the first quarter of 2021.

Problem

The client ran Word mail merge with VBA code from Excel, and the data travelled to Word through intermediate text files. They wanted a more direct route — without giving up Excel, where the rest of the process already worked.

Solution

A standalone executable was built that takes over only the Word-related part of the work:

  • running with parameters: the program receives the database connection and the template path and name;
  • working with Excel: the VBA code stayed in Excel, while the part that launched Word moved to the new program;
  • reading directly from the database, so intermediate text files are no longer needed;
  • closing on its own as soon as the report is done, leaving no windows open.

Technologies used

  • C# programming language (programiranje.co.rs): chosen for its reliability and good compatibility with Microsoft Office applications.
  • Microsoft Word Interop: working with Word and mail merge.
  • VBA in Excel: the existing part of the process the program is started from.

Result

Mail merge runs by a shorter route, without intermediate files, and users still start it from Excel, the same way as before.

Client feedback

★★★★★5/5

“Great job done, very knowledgeable developer.”


Repeating a mouse click at several screen positions

Built in the third quarter of 2021.

Problem

The client needed a Windows application that repeats one mouse click, almost instantly, at several screen positions of their choosing. Speed and precision were critical: every "copy" of the click had to land exactly on the given coordinates, with no noticeable delay.

Solution

  • instant replication of the primary click at all defined positions;
  • coordinate-based clicks: the user sets exact X and Y coordinates for each copy of the click;
  • up to fifteen additional click positions in one setup;
  • adjustable delay between repeated clicks, for programs that need a moment to respond.

Technologies used

Result

An action that took a series of consecutive clicks comes down to a single click, with the same precision every time.


Windows forms built for keyboard work

Built in the second quarter of 2021.

Problem

The programs met their functional requirements, but working in them was not comfortable: the forms used space awkwardly, did not always adapt well when the window was resized, and almost every action required the mouse. For someone who spends the whole working day in a program, that turns into lost time.

Solution

  • fixed-size forms where there are no controls that would benefit from resizing;
  • a control layout that does not waste space on the form;
  • proper resizing behaviour for forms that can grow, so the layout stays consistent;
  • a keyboard shortcut for every action in the program;
  • moving with the Tab key through the fields, in the order the work is actually done.

Technologies used

  • C# programming language (programiranje.co.rs): the primary language of the applications.
  • .NET Framework: building the applications and improving how they are used.
  • Anchor and Dock: control properties that keep the form layout consistent when resized.

Result

Work in the programs is faster, without constantly switching between keyboard and mouse, and the forms look tidy at any window size.

Do you need a similar tool?

What development includes, how the price is set and how the work proceeds is described on the Windows programs and background services page. For a program that drives someone else's web application, see the example of sending SMS messages from a desktop program, and find other work among the Windows program and automation references.