Megosztás a következőn keresztül:


New-Event

Új eseményt hoz létre.

Syntax

Default (Alapértelmezett)

New-Event
    [-SourceIdentifier] <String>
    [[-Sender] <PSObject>]
    [[-EventArguments] <PSObject[]>]
    [[-MessageData] <PSObject>]
    [<CommonParameters>]

Description

A New-Event parancsmag új egyéni eseményt hoz létre.

Egyéni események használatával értesítheti a felhasználókat a program állapotváltozásairól és minden olyan változásról, amelyet a program észlelhet, beleértve a hardver- vagy rendszerfeltételeket, az alkalmazás állapotát, a lemez állapotát, a hálózati állapotot vagy egy háttérfeladat befejezését.

Az egyéni események automatikusan hozzáadódnak az eseménysorhoz a munkamenetben, amikor azok előkerülnek; nem kell feliratkoznia rájuk. Ha azonban egy eseményt a helyi munkamenetbe szeretne továbbítani, vagy meg szeretne adni egy műveletet az eseményre való reagáláshoz, a Register-EngineEvent parancsmaggal előfizethet az egyéni eseményre.

Amikor feliratkozik egy egyéni eseményre, az esemény-előfizető hozzá lesz adva a munkamenethez. Ha a Unregister-Event parancsmaggal szakítja meg az esemény-előfizetést, az esemény-előfizető és az egyéni esemény törlődik a munkamenetből. Ha nem iratkozott fel az egyéni eseményre, az esemény törléséhez módosítania kell a programfeltételeket, vagy be kell zárnia a PowerShell-munkamenetet.

Példák

1. példa: Új esemény létrehozása az eseménysorban

PS C:\> New-Event -SourceIdentifier Timer -Sender windows.timer -MessageData "Test"

Ez a parancs létrehoz egy új eseményt a PowerShell-eseménysorban. Egy Windows.Timer objektumot használ az esemény elküldéséhez.

2. példa: Esemény létrehozása egy másik eseményre válaszul

PS C:\> 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)
   }
}

Ez a mintafüggvény a New-Event parancsmaggal hoz létre egy eseményt egy másik eseményre válaszul. A parancs a Register-ObjectEvent parancsmaggal feliratkozik a Windows Management Instrumentation (WMI) eseményre, amely egy új folyamat létrehozásakor jön létre. A parancs a parancsmag Művelet paraméterével hívja meg az új eseményt létrehozó New-Event parancsmagot.

Mivel az New-Event eseményei automatikusan bekerülnek a PowerShell-eseménysorba, nem kell regisztrálnia az eseményre.

Paraméterek

-EventArguments

Olyan objektumot ad meg, amely az esemény beállításait tartalmazza.

Paramétertulajdonságok

Típus:

PSObject[]

Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

(All)
Position:2
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-MessageData

Az eseményhez társított további adatokat adja meg. A paraméter értéke megjelenik az eseményobjektum MessageData tulajdonságában.

Paramétertulajdonságok

Típus:PSObject
Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

(All)
Position:3
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-Sender

Megadja az eseményt jelölő objektumot. Az alapértelmezett a PowerShell-motor.

Paramétertulajdonságok

Típus:PSObject
Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

(All)
Position:1
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-SourceIdentifier

Megadja az új esemény nevét. Ez a paraméter kötelező, és egyedinek kell lennie a munkamenetben.

Ennek a paraméternek az értéke az események SourceIdentifier tulajdonságában jelenik meg.

Paramétertulajdonságok

Típus:String
Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

(All)
Position:0
Kötelező:True
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

CommonParameters

Ez a parancsmag a következő gyakori paramétereket támogatja: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction és -WarningVariable. További információért lásd about_CommonParameters.

Bevitelek

None

Ehhez a parancsmaghoz nem lehet objektumokat csövezni.

Kimenetek

PSEventArgs

Jegyzetek

Linux vagy macOS platformokon nem érhetők el eseményforrások.

Az új egyéni esemény, az esemény-előfizetés és az eseménysor csak az aktuális munkamenetben létezik. Ha bezárja az aktuális munkamenetet, a rendszer elveti az eseménysort, és megszakítja az esemény-előfizetést.