0

如何在powershell中获取$Event的内容

这是我的代码

Add-Type -Path "D:\agsXMPP.dll"

$xmpp = New-Object "agsXMPP.XmppClientConnection"
$xmpp.Username = "fbusername"
$xmpp.Password = "fbpassword"
$xmpp.Server = "chat.facebook.com"


Register-ObjectEvent -InputObject $xmpp -EventName OnXmppConnectionStateChanged -Action {
    Write-Host $Event
}

$xmpp.Open();

这只会输出System.Management.Automation.PSEventArgs

那$Event,我期待XmppConnectionState

4

1 回答 1

2

$EventSubscriber:包含一个表示事件订阅者的 PSEventSubscriber 对象。

$Event: 包含一个 PSEventArgs 对象。该值与 CmdLet Get-Event 返回的对象相同。因此,您可以尝试将属性用作$Event.TimeGenerated.

$EventArgs:包含表示事件参数的对象,您可以在SourceArgsGet-Event 返回的属性中找到该对象。

$Sender:包含生成此事件的对象,您可以在SenderGet-Event 返回的属性中找到该对象。

也许您正在寻找$EventArgs?不要忘记使用| get-member来检索不同变量的内容。

于 2014-03-08T19:43:34.683 回答