Ho uno script ps1 per acquisire alcune informazioni dall'ambiente del cluster vmware.Come eseguire la sequenza di tasti all'interno di PowerShell?
In alcuni punti dello script ps1 è necessario il tasto ENTER.
Quindi, come fare?
-Grazie
Ho uno script ps1 per acquisire alcune informazioni dall'ambiente del cluster vmware.Come eseguire la sequenza di tasti all'interno di PowerShell?
In alcuni punti dello script ps1 è necessario il tasto ENTER.
Quindi, come fare?
-Grazie
Se ho capito bene, si vuole PowerShell per inviare il ENTER battitura ad alcune applicazioni interattive?
$wshell = New-Object -ComObject wscript.shell;
$wshell.AppActivate('title of the application window')
Sleep 1
$wshell.SendKeys('~')
Se questa applicazione interattiva è uno script PowerShell, basta usare tutto ciò che è nella barra del titolo della finestra PowerShell come argomento AppActivate (per impostazione predefinita, il percorso di PowerShell.exe). Per evitare ambiguità, è possibile fare in modo che lo script registri la propria finestra utilizzando il comando title 'new window title'
.
Alcune note:
{ENTER}
, anche se non sono identici: è la chiave ENTER. Un elenco completo è disponibile qui: http://msdn.microsoft.com/en-us/library/office/aa202943%28v=office.10%29.aspx.Sleep 1
è di attendere 1 secondo perché richiede un momento per l'attivazione della finestra e se si inviano immediatamente SendKeys, invierà le chiavi alla finestra di PowerShell o in nessun posto.volte WScript.Shell s' SendKeys metodo può essere un po' eccentrico, quindi se si esegue in problemi, sostituire la quarta linea di cui sopra con questo:
Add-Type -AssemblyName System.Windows.Forms
[System.Windows.Forms.SendKeys]::SendWait('~');
Grazie per l'add-Type Add alla fine lì. Stavo sbattendo la testa contro il muro per un'ora cercando di far funzionare il mio copione. – sliderhouserules
Qual è lo script Ho scritto, richiede il tasto INVIO **. invece di premere ** inserire il pulsante ** tutto il tempo, semplicemente voglio automatizzarlo. – HamTheAstroChimp
Perché è necessario premere Invio? Stai eseguendo l'host di lettura? –
Myscript accede/disconnesso continuamente da più computer. Al momento del logout è necessaria la conferma, quindi devo premere ** inserire il pulsante **. Questa è la ragione per cui voglio automatizzare. – HamTheAstroChimp