Die eigentliche Intention des PowerShell Invoker’s war, im Service Bereich einer großen Webanwendung Systeminformationen anzuzeigen, die bei Leistungseinbrüchen schnell Aufschluss über das zugrundelegende Problem bieten können.
Hierfür ist die Windows PowerShell wie gemacht, mit einfachen Command-Lets lassen sich Prozesse, Dienste oder beliebige Systeminformationen über WMI abfragen und anzeigen. Durch die Integration in die Webseite, muss kein Remotezugriff auf den oder die Web-Server selbst stattfinden, stattdessen reich eine VPN-Verbindung auf den verwendeten HTTP oder HTTPS Port.
Im Service Bereich der Webanwendung bedarf es demnach einem einfachen Eingabefeldes einem Steuerelement zum auslösen eines Postbacks und einem Control zur Anzeige der Script-Ergebnisse.
Hier eine kleines Beispiel wie ein solche PowerShell Service Bereich in einer ASP.Net Webanwendung aussehen kann.
In dem gezeigten Beispiel werden alle laufenden Windows.Dienste des hostenden Servers angezeigt. Dadurch kann schnell eine schnelle Problemanalyse durchgeführt werden.
Den Downloadlink für den PowerShellInvoker (PsInvoker) findet Ihr in diesem Post. In den nächsten Tagen werde ich ein entsprechendes Projekt auf CodePlex anlegen.