Partager via


Concepts des rapports d’erreurs

Windows PowerShell fournit deux mécanismes permettant de signaler des erreurs : un mécanisme pour des erreurs de fin et un autre mécanisme pour erreurs de non-fin. Il est important que votre applet de commande signale correctement les erreurs afin que l’application hôte qui exécute vos applets de commande puisse réagir de manière appropriée.

Votre applet de commande doit appeler la méthode System.Management.Automation.Cmdlet.ThrowTerminatingError* lorsqu’une erreur se produit qui n’autorise pas ou ne doit pas autoriser l’applet de commande à continuer à traiter ses objets d’entrée. Votre applet de commande doit appeler la méthode System.Management.Automation.Cmdlet.WriteError pour signaler des erreurs sans fin lorsque l’applet de commande peut continuer à traiter les objets d’entrée. Les deux méthodes fournissent un enregistrement d’erreur que l’application hôte peut utiliser pour examiner la cause de l’erreur.

Utilisez les instructions suivantes pour déterminer si une erreur est une erreur de fin ou de non-fin.

  • Une erreur est une erreur de fin si elle empêche votre applet de commande de continuer à traiter l’objet actuel ou de traiter correctement d’autres objets d’entrée, quel que soit leur contenu.

  • Une erreur est une erreur de fin si vous ne souhaitez pas que votre applet de commande continue de traiter l’objet actuel ou d’autres objets d’entrée, quel que soit leur contenu.

  • Une erreur est une erreur de fin si elle se produit dans une applet de commande qui n’accepte pas ou ne retourne pas d’objet ou si elle se produit dans une applet de commande qui accepte ou retourne un seul objet.

  • Une erreur est une erreur qui ne se termine pas si vous souhaitez que votre applet de commande continue à traiter l’objet actuel et tous les autres objets d’entrée.

  • Une erreur est une erreur qui ne se termine pas si elle est liée à un objet d’entrée spécifique ou à un sous-ensemble d’objets d’entrée.

Voir aussi

System.Management.Automation.Cmdlet.ThrowTerminatingError*

System.Management.Automation.Cmdlet.WriteError

enregistrements d’erreurs Windows PowerShell

écriture d’une applet de commande Windows PowerShell