作品罰金のアクションで実行する機能を持つPowerShellコンソールを発行しますが、コンソールに私が取得:のPowerShell ISEで登録-ObjectEvent
用語「MainAction」はコマンドレットの名前として認識されない、 機能、スクリプトファイル、または実行可能なプログラム。 の名前のスペルを確認するか、パスが含まれている場合は、パスが正しいことを確認してから、 を再試行してください。
修正方法?
function MainAction() {
$test = "123"
Write-Host $test
}
MainAction
$action = {
try {
Write-Host in action
MainAction
} catch {
Write-Host $Error
$timer.Stop()
Unregister-Event thetimer
}
}
$timer = New-Object Timers.Timer
Register-ObjectEvent -InputObject $timer -EventName elapsed `
-SourceIdentifier thetimer -Action $action -OutVariable out
$timer.Interval = 5000
$timer.AutoReset = $true
$timer.Start()
EDIT:
私は、関数定義を保存するためにプロファイルを使用することができますことを見出しました。 create profile使用するには:
New-Item -path $profile -itemType file -force
しかしI'amまだintrestedて理由のPowerShell ISE Register-ObjectEvent
の作用で機能を保存し、使用するプロファイルを必要としません。
'関数MainAction' - >'関数グローバル: MainAction' – PetSerAl
あなたは正しく、これはプロフィールよりも便利で、ありがとうございます。 – Lavandil