我想从powershell中的asynchronus事件写入控制台。
$timer = New-Object Timers.Timer
$timer.Interval = 2000
$timer.AutoReset = $false
$timer.Enabled = $true
Register-ObjectEvent -InputObject $timer -EventName Elapsed -SourceIdentifier c4n4 -Action {Write-Host test}
这显然有效。但是如果我将Write-Host动作封装在一个函数中。它不再了。
function myFunc{
Write-Host test
}
$timer = New-Object Timers.Timer
$timer.Interval = 2000
$timer.AutoReset = $false
$timer.Enabled = $true
Register-ObjectEvent -InputObject $timer -EventName Elapsed -SourceIdentifier c4n4 -Action {myFunc}
基本上我的问题是。如何从函数中的事件写入控制台?
答案 0 :(得分:0)
您需要在全局范围内声明该函数:
function global:myFunc{
Write-Host test
}