PowerShell 显示气球提示框 1
#加载 Winform 程序集,使用Out-Null抑制输出
[system.Reflection.Assembly]
::LoadWithPartialName(
'System.Windows.Forms'
) |
Out-Null
#创建 NotifyIcon 对象
$balloon
=
New-Object
System.Windows.Forms.NotifyIcon
$path
=
Get-Process
-id
$pid
|
Select-Object
-ExpandProperty
Path
$icon
=
[System.Drawing.Icon]
::ExtractAssociatedIcon(
$path
)
$balloon
.Icon =
$icon
$balloon
.BalloonTipIcon =
'Info'
$balloon
.BalloonTipText =
'脚本执行完毕'
$balloon
.BalloonTipTitle =
'PowerShell tips'
$balloon
.Visible =
$true
#显示气球提示框
$balloon
.ShowBalloonTip(10000)
#这里是显示时长,因为Windows里默认消息提示时长是5秒。如果ShowBalloonTip设置超过5秒,则默认显示时间为5秒。还有,如果在用户把自己电脑上的“消息提示”功能禁用了,那么这里也不会有任何提示。
有一些复杂的提示框可以避免windows默认的5秒的限制,可以实现每隔一段时间自动弹出来;只有用户鼠标点击到才会消失;或者点击时跳转到另外一个链接或执行另外一个action。
=======
需求:
提示公司所有用户重启电脑,如果用户点击到该提示框,则弹出确认提示,选YES时,电脑自动重启,最好是倒计30秒后重启。如果用户选择No,则每隔2小时后,再弹出该提示框提示用户重启。
如果用户未点击或者鼠标未移动到提示框上,则一直显示,不自动消失。
*******VICTORY LOVES PREPARATION*******