OpCodes.Endfilter 欄位

定義

將例外子句的控制 filter 權回傳回通用語言基礎設施(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 

欄位值

備註

下表列出指令的十六進位及 Microsoft 中介語言(MSIL)組合格式,並附有簡短參考摘要:

Format 組裝格式 Description
FE 11 端濾波器 SEH 例外處理的過濾器結束條款。

堆疊的過渡行為依序為:

  1. value 被推到堆疊上。

  2. value 從堆疊中彈出; endfilter 執行時控制權轉移到例外處理程序。

Value (必須是型別 int32 ,且是特定值集合之一)會從濾波子句回傳。 應該是以下之一:

  • exception_continue_searchvalue = 0) 以繼續搜尋例外處理程序

  • exception_execute_handlervalue = 1) 開始第二階段例外處理,最終執行區塊直到找到與此過濾子句相關的處理程序。 一旦被發現,操控者會被處決。

其他整數值則會產生未明確的結果。

過濾器的入口點,如方法例外表所示,必須是該過濾器程式碼區塊中的第一個指令。 該 endfilter 指令必須是濾波器程式碼區塊中的最後一條指令(因此,任何單一濾波器區塊只能有一條 endfilter 指令)。 指令執行 endfilter 後,控制權邏輯上會回流到 CLI 例外處理機制。

控制權只能透過例外機制轉移到過濾區塊。 控制權只能透過指令或執行最後throw指令,才能從濾波區塊endfilter中轉移。 你無法在區try塊中嵌入filter區塊。 若在區塊內 filter 拋出例外,該例外會被攔截並回傳 0exception_continue_search() 值。

以下 Emit 方法的超載可使用操作 endfilter 碼:

適用於