Register-CimIndicationEvent
S’abonne aux indications à l’aide d’une expression de filtre ou d’une expression de requête.
Syntax
Register-CimIndicationEvent
[-Namespace <String>]
[-ClassName] <String>
[-OperationTimeoutSec <UInt32>]
[-ComputerName <String>]
[[-SourceIdentifier] <String>]
[[-Action] <ScriptBlock>]
[-MessageData <PSObject>]
[-SupportEvent]
[-Forward]
[-MaxTriggerCount <Int32>]
[<CommonParameters>]
Register-CimIndicationEvent
[-Namespace <String>]
[-ClassName] <String>
[-OperationTimeoutSec <UInt32>]
-CimSession <CimSession>
[[-SourceIdentifier] <String>]
[[-Action] <ScriptBlock>]
[-MessageData <PSObject>]
[-SupportEvent]
[-Forward]
[-MaxTriggerCount <Int32>]
[<CommonParameters>]
Register-CimIndicationEvent
[-Namespace <String>]
[-Query] <String>
[-QueryDialect <String>]
[-OperationTimeoutSec <UInt32>]
-CimSession <CimSession>
[[-SourceIdentifier] <String>]
[[-Action] <ScriptBlock>]
[-MessageData <PSObject>]
[-SupportEvent]
[-Forward]
[-MaxTriggerCount <Int32>]
[<CommonParameters>]
Register-CimIndicationEvent
[-Namespace <String>]
[-Query] <String>
[-QueryDialect <String>]
[-OperationTimeoutSec <UInt32>]
[-ComputerName <String>]
[[-SourceIdentifier] <String>]
[[-Action] <ScriptBlock>]
[-MessageData <PSObject>]
[-SupportEvent]
[-Forward]
[-MaxTriggerCount <Int32>]
[<CommonParameters>]
Description
L’applet Register-CimIndicationEvent
de commande s’abonne aux indications à l’aide d’un nom de classe d’indication ou d’une expression de requête. Utilisez le paramètre SourceIdentifier pour donner un nom à l’abonnement.
Cette applet de commande retourne un objet EventSubscription . Vous pouvez utiliser cet objet pour annuler l’abonnement.
Exemples
Exemple 1 : Inscrire les événements générés par une classe
Cet exemple s’abonne aux événements générés par la classe nommée Win32_ProcessStartTrace. Cette classe déclenche un événement à chaque démarrage d'un processus.
Register-CimIndicationEvent -ClassName 'Win32_ProcessStartTrace' -SourceIdentifier "ProcessStarted"
Get-Event -SourceIdentifier "ProcessStarted"
L’applet Get-Event
de commande obtient les événements avec l’abonnement ProcessStarted . Pour plus d’informations, consultez Get-Event.
Remarque
Pour cet exemple, vous devez exécuter PowerShell en tant qu’Administration istrateur.
Exemple 2 : Inscrire les événements à l’aide d’une requête
Cet exemple utilise une requête pour s’abonner à un événement généré chaque fois qu’il existe une modification dans l’instance d’une classe nommée Win32_LocalTime.
$query = "SELECT * FROM CIM_InstModification WHERE TargetInstance ISA 'Win32_LocalTime'"
Register-CimIndicationEvent -Query $query -SourceIdentifier "Timer"
Exemple 3 : Exécuter un script lorsque l’événement arrive
Cet exemple montre comment utiliser une action en réponse à un événement. La variable $action
contient le bloc de script pour Action, qui utilise la $event
variable pour accéder à l’événement reçu de CIM.
$action = {
$name = $event.SourceEventArgs.NewEvent.ProcessName
$id = $event.SourceEventArgs.NewEvent.ProcessId
Write-Host -Object "New Process Started : Name = $name
ID = $id"
}
Register-CimIndicationEvent -ClassName 'Win32_ProcessStartTrace' -SourceIdentifier "ProcessStarted" -Action $action
Pour plus d’informations, consultez Win32_ProcessStartTrace.
Exemple 4 : Inscrire les événements sur un ordinateur distant
Cet exemple s’abonne aux événements sur un ordinateur distant nommé Server01. Les événements reçus du serveur CIM sont stockés dans la file d’attente d’événements dans la session PowerShell active, puis exécutent un local Get-Event
pour récupérer les événements.
Register-CimIndicationEvent -ClassName 'Win32_ProcessStartTrace' -SourceIdentifier "ProcessStarted" -ComputerName Server01
Get-Event -SourceIdentifier "ProcessStarted"
Paramètres
-Action
Spécifie les commandes qui gèrent les événements. Les commandes spécifiées par ce paramètre s’exécutent lorsqu’un événement est déclenché, au lieu d’envoyer l’événement à la file d’attente d’événements. Placez les commandes dans les accolades ({}
) pour créer un bloc de script.
Le bloc de script spécifié avec Action peut inclure les $Event
variables automatiques , , $Sender
$SourceEventArgs
$EventSubscriber
et $SourceArgs
les variables automatiques, qui fournissent des informations sur l’événement au bloc de script Action. Pour plus d’informations, consultez À propos des variables automatiques.
Type: | ScriptBlock |
Position: | 1 |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CimSession
Exécute la commande à l’aide de la session CIM spécifiée. Entrez une variable qui contient la session CIM, ou une commande qui crée ou obtient la session CIM, telle que les applets de commande ou Get-CimSession
les New-CimSession
applets de commande. Pour plus d’informations, consultez about_CimSession.
Type: | CimSession |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ClassName
Spécifie la classe d’indication à laquelle vous vous abonnez. Vous pouvez utiliser la saisie semi-automatique des onglets pour parcourir la liste des classes, car PowerShell obtient une liste de classes à partir du serveur WMI local pour fournir une liste de noms de classes.
Type: | String |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ComputerName
Spécifie le nom de l’ordinateur sur lequel vous souhaitez exécuter l’opération CIM. Vous pouvez spécifier un nom de domaine complet (FQDN), un nom NetBIOS ou une adresse IP.
Si vous spécifiez ce paramètre, l’applet de commande crée une session temporaire sur l’ordinateur spécifié à l’aide du protocole WsMan. Si vous ne spécifiez pas ce paramètre, l’applet de commande effectue une opération sur le système local à l’aide du modèle objet de composant (COM).
Si plusieurs opérations sont effectuées sur le même ordinateur, connectez-vous à l’aide d’une session CIM pour améliorer les performances.
Type: | String |
Aliases: | CN, ServerName |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Forward
Indique que les événements de l’abonnement sont transférés à la session sur l’ordinateur local. Utilisez ce paramètre lorsque vous vous inscrivez aux événements sur un ordinateur distant ou dans une session à distance.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-MaxTriggerCount
Paramètre permettant d’indiquer que l’abonné doit être automatiquement désinscrit après avoir été déclenché pour les heures spécifiées. Si la valeur est égale ou inférieure à zéro, il n’existe aucune limite quant au nombre de fois où l’événement peut être déclenché sans être désinscrit.
Type: | Int32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-MessageData
Spécifie toutes les données supplémentaires à associer à cet abonnement d’événements. La valeur de ce paramètre apparaît dans la propriété MessageData de tous les événements associés à cet abonnement.
Type: | PSObject |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Namespace
Spécifie l’espace de noms de l’opération CIM. L’espace de noms par défaut est racine/cimv2. Vous pouvez utiliser la saisie semi-automatique des onglets pour parcourir la liste des espaces de noms, car PowerShell obtient une liste d’espaces de noms à partir du serveur WMI local pour fournir la liste des espaces de noms.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-OperationTimeoutSec
Spécifie la durée pendant laquelle l’applet de commande attend une réponse de l’ordinateur. Par défaut, la valeur de ce paramètre est 0, ce qui signifie que l’applet de commande utilise la valeur de délai d’expiration par défaut pour le serveur.
Si le paramètre OperationTimeoutSec est défini sur une valeur inférieure au délai d’attente de nouvelle tentative de connexion robuste de 3 minutes, les échecs réseau qui durent plus que la valeur du paramètre OperationTimeoutSec ne sont pas récupérables, car l’opération sur le serveur expire avant que le client puisse se reconnecter.
Type: | UInt32 |
Aliases: | OT |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Query
Spécifie une requête à exécuter sur le serveur CIM. Si la valeur spécifiée contient des guillemets doubles, des guillemets "
'
simples ou une barre oblique \
inverse, vous devez échapper à ces caractères en les préfixant avec la barre oblique inverse. Si la valeur spécifiée utilise l’opérateur WQL LIKE, vous devez échapper aux caractères suivants en les plaçant entre crochets []
: pourcentage %
, trait de soulignement _
ou crochet [
ouvrant.
Type: | String |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-QueryDialect
Spécifie le langage de requête utilisé pour le paramètre Requête . Les valeurs acceptables pour ce paramètre sont : WQL ou CQL. La valeur par défaut est WQL.
Type: | String |
Position: | Named |
Default value: | WQL |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SourceIdentifier
Spécifie un nom pour l’abonnement. Le nom que vous spécifiez doit être unique dans la session active. La valeur par défaut est un GUID que PowerShell affecte. Cette valeur apparaît dans la valeur de la propriété SourceIdentifier de l’objet abonné et de tous les objets d’événement associés à cet abonnement.
Type: | String |
Position: | 1 |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SupportEvent
Indique que l’abonnement aux événements est masqué. Utilisez ce paramètre lorsque l'abonnement actuel fait partie d'un mécanisme d'inscription d'événement plus complexe et qu'il ne doit pas être découvert indépendamment.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Entrées
None
Vous ne pouvez pas diriger les objets vers cette applet de commande.
Sorties
Cette applet de commande retourne un objet EventSubscription .
Liens associés
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour