繁体   English   中英

在定义的时间后关闭远程系统上的Powershell弹出消息

[英]Powershell popup message on remote system closing after defined time

我希望能够在gui中配置关闭远程CPU上的弹出消息之前要经过多少时间。 我想有2个选择。 弹出窗口未关闭,弹出窗口在x秒后关闭。 我的$ seconds参数不起作用。

Function Send-PopupMessage1 {
Param(
[Int]$Seconds=""
)


Process{
Invoke-Command -ComputerName $cpu -Scriptblock {
    $CmdMessage = "msg.exe * $using:var2 /Time:$($Seconds)"
    Write-Host $CmdMessage
    $CmdMessage | Invoke-Expression
    }
}
}

if ($checkBox1.Checked)
{
Send-PopupMessage
}
else
{
Send-PopupMessage1 -Seconds $var1
}

这样工作更好。 现在好了。

Function Send-PopupMessage1 {
Param(
[String]$Message="$var",

[Parameter(ValueFromPipeline=$True,ValueFromPipelineByPropertyName=$True)]
[Alias("Name")]
[String[]]$Computername=$var2,

[Int]$Seconds="$var1"
)


Process{
Invoke-Command -ComputerName $Computername -ScriptBlock{

    $cmd = "msg.exe * /Time:$($using:Seconds)"
    $cmd += " $($using:Message)"

    Invoke-Expression $cmd
    }
}
}

使用使$SecondsInvoke-Command块内可用的using限定符:

Invoke-Command -ComputerName $cpu -Scriptblock {
  $CmdMessage = "msg.exe * $using:var2 /Time:$($using:Seconds)"
  Write-Host $CmdMessage
  $CmdMessage | Invoke-Expression
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM