Прикажите обавештења корисницима који користе ПоверСхелл

Упркос чињеници да је ПоверСхелл конзолни језик, понекад је потребно обавестити корисника из скрипте ПоверСхелл о одређеном догађају или потреби да се изврши одређена радња. На пример, прикажите обавештење о крају неке дуготрајне ПоСх скрипте или о појави неког важног догађаја.

Најлакши начин за приказ прозора са произвољним тестом кроз Виндовс скриптни подсистем - Всцрипт.

Следећи код ће приказати обичан текстни оквир са потребним текстом и дугме ОК.

$ всхелл = Нови објекат -ЦомОбјецт Всцрипт.Схелл
$ Оутпут = $ всхелл.Попуп ("Скрипта генерирања извештаја је довршена")

Користећи различита својства Попуп методе, можете прилагодити изглед модалног оквира с порукама. Конкретно, можете да вратите на скрипту резултате одговора корисника на питање (Да / Не).

$ Оутпут = $ всхелл.Попуп ("Скрипта за генерисање извештаја је готова! Да ли желите да га прикажете на екрану?", 0, "Извештај је спреман", 4 + 32)

Општа синтакса и параметри Попуп методе:

Попуп (,,,)

Параметри:

  • - стринг, текст поруке.
  • - изборно, број. Број секунди након којих се прозор аутоматски затвара.
  • - опционално, стринг. Текст наслова прозора поруке.
  • - изборно, број. Комбинација застава одређује тип дугмета и иконе. Могуће вредности заставе:
    • 0 - дугме ОК.
    • 1 - Тастери ОК и Откажи.
    • 2 - Тастери Стоп, Понављање, Прескочи.
    • 3 - Да, не, тастери за отказивање.
    • 4 - Да и не тастери.
    • 5 - Дугми за понављање и отказивање.
    • 16 - Икона за заустављање.
    • 32 - Икона питања.
    • 48 - икона ускличника.
    • 64 - Икона информација.

Опис: враћа целу вредност са којом можете сазнати на који тастер је корисник притиснуо. Могуће вредности:

  • -1 - прекид.
  • 1 - дугме ОК.
  • 2 - Дугме за отказивање.
  • 3 - Дугме за заустављање.
  • 4 - Дугме за понављање.
  • 5 - Дугме за прескакање.
  • 6 - дугме Да.
  • 7 - Нема дугмета.

Атрактивније и пријатније изгледајуће искачуће поруке (балони) могу се приказати у Виндовсима 7, 8.1 и 10 путем Виндовс Формс АПИ-ја. Следећи ПоверСхелл код приказаће искачућу поруку поред панела са обавештењима за Виндовс 10, која ће аутоматски нестати након 10 секунди.

Адд-Типе -АссемблиНаме Систем.Виндовс.Формс
$ глобал: балмсг = Систем нових система.Виндовс.Формс.НотифиИцон
$ патх = (Гет-Процесс -ид $ пид). Пут
$ балмсг.Ицон = [Систем.Дравинг.Ицон] :: ЕктрацтАссоциатедИцон ($ патх)
$ балмсг.БаллоонТипИцон = [Систем.Виндовс.Формс.ТоолТипИцон] :: Упозорење
$ балмсг.БаллоонТипТект = 'Ово је текст искачуће поруке за Виндовс 10 корисника'
$ балмсг.БаллоонТипТитле = "Упозорење $ Енв: УСЕРНАМЕ"
$ балмсг.Висибле = $ труе
$ балмсг.СховБаллоонТип (10000)

Поред тога, за креирање живописних искачућих порука у Виндовс-у 10 (ПоверСхелл 5.0+) можете користити засебни ПоверСхелл модул БурнтТоаст из ПоверСхелл галерије.

Модул се инсталира из мрежног спремишта помоћу менаџера пакета Виндовс 10:
Инсталл-Модуле -Наме БурнтТоаст

На пример, у претходно размотрену скрипту за аутоматско прекидање Ви-Фи мреже када сте повезани на Етхернет, можете додати живописно обавештење:

Нев-БурнтТоастНотифицатион -Тект „Прекидање везе са Ви-Фи мрежом“, „Прекинули сте са Ви-Фи мрежом, јер је ваш уређај повезан на брзу Етхернет везу“. -АппЛого Ц: \ ПС \ цхангенетворк.пнг

Дакле, сада знате како приказати корисничко обавештење путем ПоверСхелл-а. Ако корисник има звучнике, можете му чак и репродуковати мелодију:

[конзола] :: звучни сигнал (440,500)
[конзола] :: звучни сигнал (440,500)
[конзола] :: звучни сигнал (440,500)
[конзола] :: звучни сигнал (349.350)
[конзола] :: звучни сигнал (523.150)
[конзола] :: звучни сигнал (440,500)
[конзола] :: звучни сигнал (349.350)
[конзола] :: звучни сигнал (523.150)
[конзола] :: звучни сигнал (440,1000)
[конзола] :: звучни сигнал (659,500)
[конзола] :: звучни сигнал (659,500)
[конзола] :: звучни сигнал (659,500)
[конзола] :: звучни сигнал (698.350)
[конзола] :: звучни сигнал (523.150)
[конзола] :: звучни сигнал (415,500)
[конзола] :: звучни сигнал (349.350)
[конзола] :: звучни сигнал (523.150)
[конзола] :: звучни сигнал (440,1000)
[конзола] :: звучни сигнал (880,500)
[конзола] :: звучни сигнал (440,350)
[конзола] :: звучни сигнал (440,150)
[конзола] :: звучни сигнал (880,500)
[конзола] :: звучни сигнал (830,250)
[конзола] :: звучни сигнал (784.250)
[конзола] :: звучни сигнал (740,125)
[конзола] :: звучни сигнал (698,125)
[конзола] :: звучни сигнал (740,250)
[конзола] :: звучни сигнал (455,250)
[конзола] :: звучни сигнал (622,500)
[конзола] :: звучни сигнал (587.250)
[конзола] :: звучни сигнал (554,250)
[конзола] :: звучни сигнал (523,125)
[конзола] :: звучни сигнал (466,125)
[конзола] :: звучни сигнал (523.250)
[конзола] :: звучни сигнал (349,125)
[конзола] :: звучни сигнал (415,500)
[конзола] :: звучни сигнал (349.375)
[конзола] :: звучни сигнал (440,125)
[конзола] :: звучни сигнал (523,500)
[конзола] :: звучни сигнал (440,375)
[конзола] :: звучни сигнал (523,125)
[конзола] :: звучни сигнал (659,1000)
[конзола] :: звучни сигнал (880,500)
[конзола] :: звучни сигнал (440,350)
[конзола] :: звучни сигнал (440,150)
[конзола] :: звучни сигнал (880,500)
[конзола] :: звучни сигнал (830,250)
[конзола] :: звучни сигнал (784.250)
[конзола] :: звучни сигнал (740,125)
[конзола] :: звучни сигнал (698,125)
[конзола] :: звучни сигнал (740,250)
[конзола] :: звучни сигнал (455,250)
[конзола] :: звучни сигнал (622,500)
[конзола] :: звучни сигнал (587.250)
[конзола] :: звучни сигнал (554,250)
[конзола] :: звучни сигнал (523,125)
[конзола] :: звучни сигнал (466,125)
[конзола] :: звучни сигнал (523.250)
[конзола] :: звучни сигнал (349.250)
[конзола] :: звучни сигнал (415,500)
[конзола] :: звучни сигнал (349.375)
[конзола] :: звучни сигнал (523,125)
[конзола] :: звучни сигнал (440,500)
[конзола] :: звучни сигнал (349.375)
[конзола] :: звучни сигнал (261,125)
[конзола] :: звучни сигнал (440,1000)