Es gibt eine Möglichkeit das unter Windows umzusetzen, allerdings könnte es da durchaus Probleme geben. Vor allem dann, wenn Windows sich darauf verlässt, dass die Keys immer an das aktive Fenster geschickt werden.
Du könntest das mit einer Sprache deiner Wahl (die mit der Windows API interagieren kann) und der Funktion

lösen, im Zielprogramm muss der WndProc Callback allerdings so implementiert sein, wie du es erwartest.
Damit kannst du die Nachricht WM_KEYDOWN senden und als lParam oder wParam (gerade nicht sicher, schau in die Dokumentation) den Keycode mitgeben. Das funktioniert wie gesagt nicht immer - es kommt auf die Implementierung im Zielprogramm an.
So etwas geht bestimmt auch mit einfachen Skriptsprachen wie AutoIt und AHK. Habe nur bisher noch nie etwas damit gemacht, daher kann ich dir nichts dazu sagen. Dürfte aber gar nicht so schwer sein, du musst nur die Funktion importieren und mit der Windows API kommunizieren.
€: Ich merke gerade, dass du nur ein Tool suchst und scheinbar nicht programmieren kannst. Doof aber ich lasse die Antwort trotzdem mal so stehen.