Ich versuche, ein Powershell-Skript zu erstellen, um eine Installation eines Programms zu automatisieren, das ich verwende (leider hat das Programm kein stilles Installationsprogramm). Das Problem ist, dass das Installer-Fenster nicht die von sendkeys gesendeten Schlüssel braucht: Wenn ich nur Enter drücke, funktioniert es und das Senden mit sendkeys zu einem anderen Fenster funktioniert auch, aber das Senden mit sendkeys zu diesem bestimmten Installer-Fenster hat gewonnen tu nichts. Ist jemand diesem Problem zuvor begegnet und weiß, wie man es löst? das Skript, das ich zu verwenden ist versucht, ist wie folgt:Warum nimmt ein Fenster keine Schlüssel, die von Sendkeys gesendet werden?
add-type -AssemblyName microsoft.VisualBasic
add-type -AssemblyName System.Windows.Forms
./installer.exe
start-sleep 1
[Microsoft.VisualBasic.Interaction]::AppActivate('select setup language')
start-sleep 1
[System.Windows.Forms.SendKeys]::SendWait('~');
P. S es ist kein Timing-Problem: Ich habe versucht, die Schlafzeiten zu ändern, aber das wird nichts nützen.
Danke!
Ist das Installationsprogramm erhöht, während das Powershell-Skript nicht aktiviert ist? Beachten Sie, dass Sie z. B. nicht zwischen Fenstern mit unterschiedlichen Berechtigungsstufen ziehen und ablegen können. – briantist
@briantist - danke für deinen Kommentar. Ich bin mir nicht sicher, ob ich verstehe, was Sie meinen - das Installationsprogramm hat den Fokus, wenn das Skript die Eingabetaste sendet. – shayelk
Wird das Skript im Administratormodus ausgeführt? Wenn nicht, führen Sie dieses Skript als Administratorrechte aus, auch wenn Sie auf diesem System Administrator sind. –