Błędy niepowodujące przerwania działaniaNon-Terminating Errors

W tym temacie omówiono metodę używaną do zgłaszania błędów niepowodujących zakończenia.This topic discusses the method used to report non-terminating errors. Omówiono w nim również sposób wywoływania metody z polecenia cmdlet.It also discusses how to call the method from within the cmdlet.

Gdy wystąpi błąd niepowodujący zakończenia, polecenie cmdlet powinno zgłosić ten błąd, wywołując metodę System. Management. Automation. cmdlet. WriteError .When a non-terminating error occurs, the cmdlet should report this error by calling the System.Management.Automation.Cmdlet.WriteError method. Gdy polecenie cmdlet zgłosi błąd niepowodujący zakończenia, polecenie cmdlet może nadal działać na tym obiekcie wejściowym i na innych przychodzących obiektach potoku.When the cmdlet reports a non-terminating error, the cmdlet can continue to operate on this input object and on further incoming pipeline objects. Jeśli polecenie cmdlet wywołuje metodę System. Management. Automation. cmdlet. WriteError , polecenie cmdlet może napisać rekord błędu, który opisuje warunek, który spowodował błąd niepowodujący zakończenia.If the cmdlet calls the System.Management.Automation.Cmdlet.WriteError method, the cmdlet can write an error record that describes the condition that caused the non-terminating error. Aby uzyskać więcej informacji na temat rekordów błędów, zobacz rekordy błędów programu Windows PowerShell.For more information about error records, see Windows PowerShell Error Records.

Polecenia cmdlet mogą wywołać metodę System. Management. Automation. cmdlet. WriteError w miarę potrzeb z poziomu metod przetwarzania danych wejściowych.Cmdlets can call System.Management.Automation.Cmdlet.WriteError as necessary from within their input processing methods. Polecenia cmdlet mogą jednak wywołać System. Management. Automation. cmdlet. WriteError tylko z wątku, który wywołał metodę przetwarzania danych wejściowych System. Management. Automation. cmdlet. BeginProcessing, System. Management. Automation. cmdlet. ProcessRecordlub System. Management. Automation. cmdlet. EndProcessing .However, cmdlets can call System.Management.Automation.Cmdlet.WriteError only from the thread that called the System.Management.Automation.Cmdlet.BeginProcessing, System.Management.Automation.Cmdlet.ProcessRecord, or System.Management.Automation.Cmdlet.EndProcessing input processing method. Nie wywołuj metody System. Management. Automation. cmdlet. WriteError z innego wątku.Do not call System.Management.Automation.Cmdlet.WriteError from another thread. Zamiast tego należy przekazać błędy z powrotem do głównego wątku.Instead, communicate errors back to the main thread.

Zobacz teżSee Also

System. Management. Automation. cmdlet. WriteErrorSystem.Management.Automation.Cmdlet.WriteError

System. Management. Automation. cmdlet. BeginProcessingSystem.Management.Automation.Cmdlet.BeginProcessing

System. Management. Automation. cmdlet. ProcessRecordSystem.Management.Automation.Cmdlet.ProcessRecord

System. Management. Automation. cmdlet. EndProcessingSystem.Management.Automation.Cmdlet.EndProcessing

Rekordy błędów programu Windows PowerShellWindows PowerShell Error Records

Pisanie polecenia cmdlet programu Windows PowerShellWriting a Windows PowerShell Cmdlet