PowerShell este o formă avansată de prompt de comandă. Este extins cu un set imens de cmdlet-uri gata de utilizat și vine cu posibilitatea de a utiliza .NET framework / C # în diferite scenarii. Windows include un instrument GUI, PowerShell ISE, care permite editarea și depanarea scripturilor într-un mod util. Uneori, mulți trebuie să afișeze o notificare dintr-un script PowerShell pentru a informa utilizatorul că este efectuată o anumită sarcină. Iată câteva metode pe care le puteți utiliza.
Reclama
Un mesaj din scriptul dvs. PowerShell poate informa utilizatorul că scriptul dvs. de lungă durată și-a terminat activitatea. Sau poate spune că ceva nu este în regulă sau că s-a întâmplat ceva important. Iată metodele pe care le folosesc de obicei.
Afișați o notificare de mesaj de la PowerShell
Cea mai simplă metodă implică clasicul Windows Scripting Host aplicație.
cum să invitați pe cineva să discordeze serverul
Cu PowerShell, este ușor să creați o instanță a unui obiect COM. În cazul nostru, avem nevoie de obiectul Windows.Shell de la WSH. Poate fi creat cu următoarea comandă:
$ wsh = New-Object -ComObject Wscript.Shell
Acum, ne putem folosi de$ wsh
obiect la apelarea metodelor disponibile pentruWscript.Shell
. Unul dintre ei estePop-up
, de asta avem nevoie. Se poate utiliza următorul cod:
$ wsh = New-Object -ComObject Wscript.Shell $ wsh.Popup („Bună ziua de la Winaero”)
Pop-up
metoda poate fi personalizată. De exemplu, puteți specifica titlul acestuia, atribui una dintre pictogramele de dialog implicite sau afișa butoane suplimentare.
Personalizați metoda Popup
Sintaxa este următoarea.
Pop-up(,,,)
Text
este textul pe care doriți să îl afișați în mesaj.
SecondsToWait
este un număr întreg care conține numărul de secunde pentru care se va afișa caseta până la respingere. Dacă este zero sau omis, caseta de mesaj rămâne până când utilizatorul renunță.
Titlu
este un șir care conține titlul care va apărea ca titlul mesajului.
Tip
este un număr întreg care corespunde unui anumit aspect și comportament definit în tabelul următor.
Valoare | Buton |
---|---|
0 | O.K |
1 | OK, Anulați |
2 | Intrerupere de sarcina, Ignorați, reîncercați |
3 | Da, Nu, anulează |
4 | Da nu |
5 | Reîncercați, Anulare |
16 | Critic |
32 | Întrebare |
48 | Exclamare |
64 | informație |
Pentru a obține pictograma și butoanele dorite, combinați valorile. De exemplu, pentru a compune o întrebare, utilizați 1 + 32 ca dvs.Tip
valoare. Vezi următorul exemplu:
Metoda Popup poate, de asemenea, să returneze butonul pe care utilizatorul a dat clic pentru a închide caseta de mesaj pop-up. Consultați următorul tabel:
Valoare returnată | Butonul a făcut clic |
---|---|
1 | O.K |
2 | Anulare |
3 | Intrerupere de sarcina |
4 | Reîncercați |
5 | Ignora |
6 | da |
7 | Nu |
-1 | Niciuna, mesaj caseta a fost respinsă automat (timeout) |
Puteți gestiona valoarea returnată după cum urmează:
$ result = $ wsh.Popup („Îți place Winaero?”, 0, „O întrebare de la PS”, 1 + 32)
Alternativ, puteți utiliza un apel .NET Framework pentru a afișa un mesaj.
Utilizarea MessageBox din .NET Framework
Comanda pe care trebuie să o utilizați arată după cum urmează:
[System.Windows.MessageBox] :: Show („Bună ziua de la Winaero”)
Rezultatul:
Windows 10 documente recente din meniul Start
Din nou, îl puteți personaliza. Pentru referință, consultați următoarea pagină:
În cele din urmă, există un modul special pentru PowerShell pe care îl puteți utiliza atunci când este posibil.
Folosind un modul special, BurntToast
Dacă nu sunteți restricționat să utilizați module externe, puteți merge cu BurntToast .
Instalați-l după cum urmează:
- Deschis PowerShell în calitate de administrator .
- Tip:
Install-Module -Name BurntToast
- Modulul este gata de utilizare.
Pentru a afișa o notificare, rulați comanda:
Modul de import BurntToast
New-BurntToastNotification -Text „Winaero”, „Hello from PowerShell”
A se vedea Galeria PowerShell pentru detalii și instrucțiuni complete.
Vă rugăm să rețineți următoarele. Pentru a vedea notificarea,
- Politica de execuție PowerShell ar trebui să fie configurat pentru a permite încărcarea modulelor terță parte.
- Dacă Focus Assist este activat în Windows 10, poate ascunde notificările BurntToast.
- Modulul poate fi eliminat cu ajutorul comenzii
Uninstall-Module BurntToast
.
Asta e!