Ich habe mehrere Anwendungen, die Teil einer Reihe von Tools sind, die verschiedene Entwickler in unserem Studio verwenden. Diese Anwendungen sind hauptsächlich Befehlszeilen-Apps, die eine DOS-cmd-Shell öffnen. Diese Apps wiederum starten eine GUI-Anwendung, die Ausgabe und Status (über Sockets) dieser Befehlszeilen-Apps verfolgt.Test laufender Zustand einer Windows-Anwendung
Die Befehlszeilen-Apps können mit dem angemeldeten Benutzer gestartet werden, wenn ihre Arbeitsstation gesperrt ist (sie starten eine Stapeldatei und sperren sofort ihre Arbeitsstation) und wenn sie abgemeldet werden (über eine geplante Aufgabe) . Die Probleme, die ich habe, sind mit den letzten beiden Fällen.
Wenn eine dieser Anwendungen ausgelöst wird, wenn der Benutzer gesperrt oder abgemeldet ist, werden mit diesen Befehlen die GUI-Fenster erzeugt, die die Ausgabe/den Status verfolgen. Das ist in Ordnung, aber sagen Sie, dass der Benutzer seine Arbeitsstation gesperrt hat - wenn sie ihre Arbeitsstation entsperren, ist die GUI nicht sichtbar. Es läuft die Aufgabenliste, aber es ist nicht sichtbar. Wenn diese Benutzer das nächste Mal einige unserer Befehlszeilen-Apps ausführen, wird die GUI nicht gestartet (weil sie bereits ausgeführt wird). Da sie jedoch nicht auf dem Desktop angezeigt wird, sehen Benutzer keine Ausgabe. Ich suche nach einer Möglichkeit, von meinen Befehlszeilen-Apps zu unterscheiden, wenn sie hinter einer gesperrten Workstation laufen oder wenn ein Benutzer ausgeloggt ist (über geplante Aufgabe) - im Grunde läuft er ohne den Desktop eines Benutzers sichtbar. Wenn ich das sagen kann, kann ich einfach unsere GUI nicht starten und viele Probleme verhindern.
Diese Apps, die ich testen muss, sind C/C++ Windows-Anwendungen.
Ich hoffe, dass dies sinnvoll ist.