Вызовите уведомление всплывающее сообщение в Windows 7 из CMD? - PullRequest
10 голосов
/ 12 июня 2011

Мне нужно создать всплывающее сообщение с уведомлением в Windows 7 из командной строки с пользовательским текстом.Я искал в Google и нашел shell32.

Ответы [ 4 ]

12 голосов
/ 20 января 2012

Notifu - это бесплатная программа для Windows с открытым исходным кодом, которая отображает в системном окне всплывающие подсказки с указанным пользователем текстом.Вы можете запустить его из командной строки, поэтому его легко включить в запланированное задание или пакетный файл.

http://www.paralint.com/projects/notifu/download.html#Download

8 голосов
/ 12 июня 2011

Это можно сделать в Powershell :

бросить значок (.ico файл) в каталог c:\temp или указать что-нибудь еще.

[void] [System.Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms")

$objBalloon = New-Object System.Windows.Forms.NotifyIcon
$objBalloon.Icon = "C:\temp\Folder.ico"

# You can use the value Info, Warning, Error
$objBalloon.BalloonTipIcon = "Info"

# Put what you want to say here for the Start of the process
$objBalloon.BalloonTipTitle = "Begin Title"
$objBalloon.BalloonTipText = "Begin Message"
$objBalloon.Visible = $True
$objBalloon.ShowBalloonTip(10000)                       

Выполняй работу

Поместите то, что вы хотите сказать здесь для завершения процесса

$objBalloon.BalloonTipTitle = "End Title"
$objBalloon.BalloonTipText = "End Message"
$objBalloon.Visible = $True
$objBalloon.ShowBalloonTip(10000)
3 голосов
/ 25 октября 2018

Вот рабочий сжатый вызов powershell. Каждая его часть важна, так как для нее требуется базовая иконка уведомления и флаг «видимый».

powershell [Reflection.Assembly]::LoadWithPartialName("""System.Windows.Forms""");$obj=New-Object Windows.Forms.NotifyIcon;$obj.Icon = [drawing.icon]::ExtractAssociatedIcon($PSHOME + """\powershell.exe""");$obj.Visible = $True;$obj.ShowBalloonTip(100000, """TITLE""","""NOTIFICATION""",2)>nul
1 голос
/ 27 октября 2017

Вы можете использовать NirCmd от Nir Sofer следующим образом:

NirCmd.exe trayballoon [Title] [Balloon Text] [Icon File] [Timeout] 

Похоже, это не работает для Windows 10. Там вы можете использовать Toast.exe , который вместо этого пишет в область сообщения.

Toast.exe  -t "Title text" -m "Message"  -p NotificationImage.png

Вы должны включить уведомления для Toast.exe в диалоге настроек Windows 10 в Настройки> Уведомления и действия

...