Udostępnij za pośrednictwem


OpCodes.Endfilter Pole

Definicja

Przenosi kontrolę z filter klauzuli wyjątku z powrotem do programu obsługi wyjątków infrastruktury języka wspólnego (CLI).

public: static initonly System::Reflection::Emit::OpCode Endfilter;
public static readonly System.Reflection.Emit.OpCode Endfilter;
 staticval mutable Endfilter : System.Reflection.Emit.OpCode
Public Shared ReadOnly Endfilter As OpCode 

Wartość pola

Uwagi

W poniższej tabeli wymieniono format zestawu szesnastkowy instrukcji i microsoft intermediate language (MSIL) wraz z krótkim podsumowaniem referencyjnym:

Format Format zestawu Opis
FE 11 endfilter Końcowa klauzula filtru obsługi wyjątków SEH.

Zachowanie przejściowe stosu w kolejności sekwencyjnej jest następujące:

  1. value jest wypychany do stosu.

  2. value jest zwinięty ze stosu; endfilter program jest wykonywany, a kontrolka jest przekazywana do programu obsługi wyjątków.

Value (który musi być typu int32 i jest jednym z określonych zestawów wartości) jest zwracany z klauzuli filtru. Powinna to być jedna z:

  • exception_continue_search (value = 0), aby kontynuować wyszukiwanie programu obsługi wyjątków

  • exception_execute_handler (value = 1) aby rozpocząć drugą fazę obsługi wyjątków, w której bloki są uruchamiane do momentu zlokalizowania procedury obsługi skojarzonej z tą klauzulą filtru. Po odnalezieniu program obsługi jest wykonywany.

Inne wartości całkowite będą generować nieokreślone wyniki.

Punkt wejścia filtru, jak pokazano w tabeli wyjątków metody, musi być pierwszą instrukcją w bloku kodu filtru. Instrukcja endfilter musi być ostatnią instrukcją w bloku kodu filtru (w związku z tym może istnieć tylko jeden endfilter blok filtru). Po wykonaniu instrukcji endfilter sterowanie logicznie przepływa z powrotem do mechanizmu obsługi wyjątków interfejsu wiersza polecenia.

Nie można przenieść kontrolki do bloku filtru z wyjątkiem mechanizmu wyjątków. Nie można przenieść kontrolki z bloku filtru, z wyjątkiem użycia throw instrukcji lub wykonania ostatniej endfilter instrukcji. Nie można osadzić try bloku w filter bloku. Jeśli wyjątek zostanie zgłoszony wewnątrz filter bloku, zostanie przechwycony i zostanie zwrócona wartość 0 (exception_continue_search).

Emit Następujące przeciążenie metody może używać endfilter kodu opcode:

Dotyczy