Błędy niepowodujące przerwania działania

W tym temacie omówiono metodę używaną do zgłaszania błędów niepowiązywających się z błędami. Omówiono w nim również sposób wywołania metody z poziomu polecenia cmdlet .

W przypadku wystąpienia błędu bez zakończenia polecenie cmdlet powinno zgłosić ten błąd, wywołując metodę System.Management.Automation.Cmdlet.WriteError. Gdy polecenie cmdlet zgłasza błąd niepowiązywający z zakończeniem, polecenie cmdlet może nadal działać na tym obiekcie wejściowym i na dalszych przychodzących obiektach potoku. Jeśli polecenie cmdlet wywołuje metodę System.Management.Automation.Cmdlet.WriteError, polecenie cmdlet może napisać rekord błędu opisujący warunek, który spowodował błąd niepowiązywający zakończenia. Aby uzyskać więcej informacji na temat rekordów błędów, zobacz Windows PowerShell rekordy błędów.

Polecenia cmdlet mogą w razie potrzeby wywołać system.Management.Automation.Cmdlet.WriteError z poziomu metod przetwarzania danych wejściowych. Jednak polecenia cmdlet mogą wywołać metodę System.Management.Automation.Cmdlet.WriteError tylko z wątku o nazwie System.Management.Automation.Cmdlet.BeginProcessing, System.Management.Automation.Cmdlet.ProcessRecord lub System.Management.Automation.Cmdlet.EndProcessing, metody przetwarzania danych wejściowych. Nie należy wywołać system.Management.Automation.Cmdlet.WriteError z innego wątku. Zamiast tego przekaż błędy z powrotem do głównego wątku.

Zobacz też

System.Management.Automation.Cmdlet.WriteError

System.Management.Automation.Cmdlet.BeginProcessing

System.Management.Automation.Cmdlet.ProcessRecord

System.Management.Automation.Cmdlet.EndProcessing

Rekordy błędów programu Windows PowerShell

Pisanie polecenia cmdlet programu Windows PowerShell