New-PefWin32EventTrigger
New-PefWin32EventTrigger
Creates a trigger that signals when a specified Win32 system event is raised.
Syntax
Parameter Set: Default
New-PefWin32EventTrigger [-EventName] <String> [-CheckTimerPeriodMs <Int32> ] [-InformationAction <System.Management.Automation.ActionPreference> {SilentlyContinue | Stop | Continue | Inquire | Ignore | Suspend} ] [-InformationVariable <System.String> ] [-Repeat] [ <CommonParameters>]
Detaillierte Beschreibung
The New-PefWin32EventTrigger cmdlet creates a trigger that signals when a specified Win32 system event is raised. Use a Win32 system event object to control when to start or stop a trace, or trigger other actions, from the process that creates the event. The trigger becomes active when you associate it with a Protocol Engineering Framework (PEF) action.
Parameter
-CheckTimerPeriodMs<Int32>
Specifies how often, in milliseconds, to check for an event. The default value is 1000 ms.
Aliasse |
none |
Erforderlich? |
false |
Position? |
named |
Standardwert |
none |
Pipelineeingaben akzeptieren? |
false |
Platzhalterzeichen akzeptieren? |
false |
-EventName<String>
Specifies the name of the event to wait for.
Aliasse |
none |
Erforderlich? |
true |
Position? |
1 |
Standardwert |
none |
Pipelineeingaben akzeptieren? |
false |
Platzhalterzeichen akzeptieren? |
false |
-InformationAction<System.Management.Automation.ActionPreference>
Specifies how this cmdlet responds to an information event. Die folgenden Werte für diesen Parameter sind zulässig:
-- SilentlyContinue
-- Stop
-- Continue
-- Inquire
-- Ignore
-- Suspend
Aliasse |
infa |
Erforderlich? |
false |
Position? |
named |
Standardwert |
none |
Pipelineeingaben akzeptieren? |
false |
Platzhalterzeichen akzeptieren? |
false |
-InformationVariable<System.String>
Specifies a variable in which to store an information event message.
Aliasse |
iv |
Erforderlich? |
false |
Position? |
named |
Standardwert |
none |
Pipelineeingaben akzeptieren? |
false |
Platzhalterzeichen akzeptieren? |
false |
-Repeat
Indicates that the trigger runs on each occurrence of the event. If you do not specify this parameter, the trigger runs only once.
Aliasse |
none |
Erforderlich? |
false |
Position? |
named |
Standardwert |
none |
Pipelineeingaben akzeptieren? |
false |
Platzhalterzeichen akzeptieren? |
false |
<CommonParameters>
Dieses Cmdlet unterstützt die allgemeinen Parameter: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer, -OutVariable. Weitere Informationen finden Sie unter about_CommonParameters (https://go.microsoft.com/fwlink/p/?LinkID=113216).
Eingaben
Der Eingabetyp ist der Typ der Objekte, die über die Pipeline an das Cmdlet übergeben werden können.
Ausgaben
Der Ausgabetyp ist der Typ der Objekte, die vom Cmdlet ausgegeben werden.
Beispiele
Example 1: Create aWin32 event trigger that stops a trace session
This example creates a Win32 system event trigger, and then associates it to a Trace Session. The Trace Session stops when the trigger signals the named system event.
The first command creates a trigger object for a Win32 system event named TestEvent, and then stores in the $Trigger01 variable. The trigger checks for the event every five milliseconds.
The second command uses the New-PefTraceSession cmdlet to create a Trace Session object, and then stores it in the $TraceSession01 variable.
The third command uses the Add-PefMessageSource cmdlet to specify a provider for the session that is stored in $TraceSession01.
The fourth command uses the Stop-PefTraceSession cmdlet to create a stop action for the Win32 system event trigger stored in $Trigger01, and associates that action with the session that is stored in $TraceSession01. An external process can now signal the event to stop the trace.
The final command uses the Start-PefTraceSession cmdlet to start the session that is stored in $TraceSession01.
PS C:\> $Trigger01 = New-PefWin32EventTrigger -EventName "TestEvent" -CheckTimerPeriodMs 5
PS C:\> $TraceSession01 = New-PefTraceSession -Mode Linear -Force -Path "C:\traces\Win32Event" -Name "TestEventLogEventScenario" -SaveOnStop
PS C:\> Add-PefMessageSource -PEFSession $TraceSession01 -Source "Microsoft-Pef-WFP-MessageProvider"
PS C:\> Stop-PefTraceSession -PEFSession $TraceSession01 -Trigger $Trigger01
PS C:\> Start-PefTraceSession -PEFSession $TraceSession01