2016-03-23 10 views
0

Gibt es eine Möglichkeit in der Powershell auf Nachrichtenaufforderungen zu warten, die von Software erzeugt werden, die die Nachrichtenaufforderung beenden?Powershell: Kill und Meldung Eingabeaufforderung nach Fenstertitel

Zum Beispiel, wenn ich eine Anwendung verwende und dann eine Meldung für den Benutzer auf "OK" klicken. Gibt es eine Möglichkeit, mit PowerShell diesen "Fenstertitel" zu finden, um diese Aufforderung zu beenden?

+0

Ich denke, Sie sollten AutoIt/AutoHotket dafür verwenden. Die Unterstützung, um ein Fenster zu manipulieren, hängt davon ab, was genau dazu verwendet wurde, aber ich denke, das ist sehr machbar. – mjsr

+0

Ja, jemand hat diese Idee zu mir erwähnt. Um AutoIt zu verwenden, müssen Sie die exe herunterfahren und ausführen. Dann werden Eingabeaufforderungen von Windows Titelname überwacht und sie schließen. Ich war auf der Suche nach einem leichten und effizienten Weg, es zu tun. Ich habe Powershell untersucht, konnte aber nichts auf Google oder Stackoverflow finden. Wenn ich in PowerShell keinen Weg finde, es zu tun, dann lade ich AutoIt herunter. – TheInfamousOne

+0

Sie können das WASP-Powershell-Modul (google it) verwenden. Ich glaube da auch andere Module. –

Antwort

1

Ich entschied mich für AutoIt.

Ich bemerkte, AutoIt hat ein AutoIt Window Info Tool, das Sie mit der Maus über die Nachricht Prompt bewegen können. Dann gibt Ihnen die Window-Info den Windows-Titel, den Text und die CLASS-ID, falls vorhanden.

Dann können Sie ein einfaches Autoit-Skript schreiben, das auf die Meldung warten und es schließen wird.

Beispiel Skript, das ich verwende.

WinWait("[CLASS:#32770]", "Cannot sign in to Lync because this sign-in address was not found. Please verify the sign-in address and try again. If the problem continues, please contact your support team.", 0) 
WinClose("Lync") 

WinWait wird mit dieser spezifischen Nachricht für die prompte warten und es schließen. Sobald es die Aktion ausführt und das Fenster schließt. Die EXE-Datei wird heruntergefahren und nicht mehr ausgeführt, es sei denn, Sie programmieren sie so, dass sie nicht geschlossen wird.

Verwandte Themen