Powershell. Вывод всплывающего сообщения на экран/MsgBox

Я не нашел способа сделать так,  что бы вызываемое окно было поверх всех остальных окон, с помощью стандартных средств PS:

Но я знаю что в VBS есть свойство MsgBox под названием SystemModal, которое как раз и заставляет появляться popup окно поверх всех, расположенных на экране.

Мы можем убедиться в этом так:

Убедившись в наличии нужного свойства, мы можем использовать этот Workaround aka «костыль»:

UPD:

В итоге я разобрался, как используя Forms.MessageBox сделать окно «поверх всех».

На первый взгляд этот способ ничем не лучше предыдущего, но он немного короче и не требует подгрузки дополнительных компонентов.
А так же в PowerShell версии 6.1 удален командлет Add-Type.

Хотя VisualBasic по прежнему должен  подгружаться через .NET

 Посмотреть доступные типы форм и иконок можно следующими командами


Еще у полученных параметров есть соответствующие им числовые коды, кстати такие же как и в VBS:

Записать ответ диалогового окна в переменную

Бонусом напишу, что для получения ответа в переменную нужно просто присвоить ей команду на вызов окна:

Share on VKShare on FacebookTweet about this on TwitterShare on Google+Pin on PinterestEmail this to someone

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *