2012-12-03 39 views
0

我想從powershell中的異步事件寫入控制檯。從異步事件寫入主機

$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} 

這顯然有效。但是,如果我在一個函數內封裝寫主機操作。它不再。

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

您需要聲明的功能在全球範圍內:

function global:myFunc{ 
    Write-Host test 
}