Nur so als Idee: Könntest Du nicht ein einfaches Programm vorschalten, das sich im Prinzip nie ändert? Es sucht die neueste Version es eigentlichen Programms (nach Datum im Dateinamen) und startet sie. Dieses Executable kann man dann wo auch immer als Shortcut oder Menüeintrag verwenden.
Wo ich so drüber nachdenke: Das sollten wir bei uns vielleicht auch mal so implementieren. Wir haben nämlich ein ähnlich gelagertes Problem.
Ich habe es ähnlich gelöst.
Ein Loader Programm vergleicht jeweils die Clientversion mit der Serverversion. Sofern eine neuere vorhanden ist, wird die Serverversion im Client lokal gespeichert und anschliessend vom Loader gestartet. Sofern ein Task mit dem gleichen Namen läuft, melde ich dies und der User kann entscheiden, ob der Prozess abgeschossen werden soll und danach das Update eingespielt wird oder ob die veraltete Version gestartet werden soll.
Den Loader habe ich gleichzeitig mit einer Autoupdate-Funktion versehen so dass ich auch jeweils den Loader automatisch ersetzen kann.
So ist alles aktuell und ich habe bisher keine Komplikationen feststellen können.
In meinem Fall starte ich vom Loader aus mehrere Programme