Erstellt ein neues Ereignis. (New-Event)
NAMENew-EventÜBERSICHTErstellt ein neues Ereignis.SYNTAXNew-Event [-SourceIdentifier] <string> [[-Sender] <psobject>] [[-EventArguments] <PSObject[]>] [[-MessageData] <psobject>] [<CommonParameters>]BESCHREIBUNGMit dem Cmdlet "New-Event" wird ein neues benutzerdefiniertes Ereignis erstellt. Sie können Benutzer mithilfe benutzerdefinierter Ereignisse über Statusänderungen im Programm und jede Änderung benachrichtigen, die das Programm erkennt, z. B. Hardware- oder Systembedingungen, Anwendungsstatus, Datenträgerstatus, Netzwerkstatus oder Abschluss eines Hintergrundauftrags. Benutzerdefinierte Ereignisse werden automatisch der Ereigniswarteschlange in der Sitzung hinzugefügt, wenn sie ausgelöst werden. Sie müssen nicht abonniert werden. Wenn Sie jedoch ein Ereignis an die lokale Sitzung weiterleiten oder eine Aktion als Reaktion auf das Ereignis angeben möchten, abonnieren Sie das benutzerdefinierte Ereignis mithilfe des Cmdlets "Register-EngineEvent". Wenn Sie ein benutzerdefiniertes Ereignis abonnieren, wird der Sitzung der Ereignisabonnent hinzugefügt. Wenn Sie das Ereignisabonnement mit dem Cmdlet "Unregister-Event" abbrechen, werden der Ereignisabonnent und das benutzerdefiniertes Ereignis aus der Sitzung gelöscht. Wenn Sie das benutzerdefinierte Ereignis nicht abonnieren, müssen Sie zum Löschen des Ereignisses die Programmbedingungen ändern oder die Windows PowerShell-Sitzung schließen.PARAMETER-EventArguments <PSObject[]> Gibt ein Objekt an, das Optionen für das Ereignis enthält. Erforderlich? false Position? 3 Standardwert Keiner Pipelineeingaben akzeptieren?false Platzhalterzeichen akzeptieren?false -MessageData <psobject> Gibt weitere dem Ereignis zugeordnete Daten an. Der Wert dieses Parameters wird in der MessageData-Eigenschaft des Ereignisobjekts angezeigt. Erforderlich? false Position? 4 Standardwert Keiner Pipelineeingaben akzeptieren?false Platzhalterzeichen akzeptieren?false -Sender <psobject> Gibt das Objekt an, das das Ereignis auslöst. Der Standardwert ist das Windows PowerShell-Modul. Erforderlich? false Position? 2 Standardwert Keiner Pipelineeingaben akzeptieren?false Platzhalterzeichen akzeptieren?false -SourceIdentifier <string> Gibt einen Namen für das neue Ereignis an. Dieser Parameter ist erforderlich, und er muss in der Sitzung eindeutig sein. Der Wert dieses Parameters wird in der SourceIdentifier-Eigenschaft der Ereignisse angezeigt. Erforderlich? true Position? 1 Standardwert Pipelineeingaben akzeptieren?false Platzhalterzeichen akzeptieren?false <CommonParameters> Dieses Cmdlet unterstützt folgende allgemeine Parameter: "Verbose", "Debug", "ErrorAction", "ErrorVariable", "WarningAction", "WarningVariable", "OutBuffer" und "OutVariable". Weitere Informationen erhalten Sie mit dem Befehl "get-help about_commonparameters".EINGABENKeiner Eingaben können nicht über die Pipeline an dieses Cmdlet übergeben werden.AUSGABENSystem.Management.Automation.PSEventArgsHINWEISEDas neue benutzerdefinierte Ereignis, das Ereignisabonnement und die Ereigniswarteschlange sind nur in der aktuellen Sitzung vorhanden. Wenn Sie die aktuelle Sitzung schließen, wird die Ereigniswarteschlange verworfen, und das Ereignisabonnement wird abgebrochen.Beispiele
BEISPIEL 1C:\PS>new-event -sourceidentifier Timer -sender windows.timer -messagedata "Test" Beschreibung ----------- Mit diesem Befehl wird ein neues Ereignis in der Windows PowerShell-Ereigniswarteschlange erstellt. Das Ereignis wird mithilfe eines Windows.Timer-Objekts gesendet.BEISPIEL 2C:\PS>function Enable-ProcessCreationEvent { $query = New-Object System.Management.WqlEventQuery "__InstanceCreationEvent", (New-Object TimeSpan 0,0,1), "TargetInstance isa 'Win32_Process'" $processWatcher = New-Object System.Management.ManagementEventWatcher $query $identifier = "WMI.ProcessCreated" Register-ObjectEvent $processWatcher "EventArrived" -SupportEvent $identifier -Action { [void] (New-Event -sourceID "PowerShell.ProcessCreated" -Sender $args[0] -EventArguments $args[1].SourceEventArgs.NewEvent.TargetInstance) } } Beschreibung ----------- In dieser Beispielfunktion wird das Cmdlet "New-Event" verwendet, um ein Ereignis als Reaktion auf ein anderes Ereignis auszulösen. Im Befehl wird das WMI-Ereignis (Windows Management Instrumentation, Windows-Verwaltungsinstrumentation), das beim Erstellen eines neuen Prozesses ausgelöst wird, mit dem Cmdlet "Register-ObjectEvent" abonniert. Das Cmdlet "New-Event", das das neue Ereignis erstellt, wird mit dem Action-Parameters des Cmdlet aufgerufen. Da die von New-Event ausgelösten Ereignisse automatisch der Windows PowerShell-Ereigniswarteschlange hinzugefügt werden, müssen Sie dieses Ereignis nicht abonnieren. VERWANDTE LINKS Online version: http://go.microsoft.com/fwlink/?LinkID=135234 (möglicherweise auf Englisch) Register-ObjectEvent Register-EngineEvent Register-WmiEvent Unregister-Event Get-Event Remove-Event Wait-Event C:\Windows>powershell get-help Add-Member -full
Microsoft Windows [Version 10.0.19045.3693]
Copyright (c) 2023 Microsoft Corporation.
ColorConsole [Version 3.7.1000] PowerShell 2.0-Export