NdisFRegisterFilterDriver 函式 (ndis.h)

篩選驅動程式會呼叫 NdisFRegisterFilterDriver 函 式,以向 NDIS 註冊其 FilterXxx 函式。

語法

NDIS_STATUS NdisFRegisterFilterDriver(
  [in]  PDRIVER_OBJECT                      DriverObject,
  [in]  NDIS_HANDLE                         FilterDriverContext,
        PNDIS_FILTER_DRIVER_CHARACTERISTICS FilterDriverCharacteristics,
  [out] PNDIS_HANDLE                        NdisFilterDriverHandle
);

參數

[in] DriverObject

Argument1參數上,篩選驅動程式在其DriverEntry常式中收到的不透明驅動程式物件的指標。 (如需詳細資訊,請參閱 NDIS 篩選驅動程式的 DriverEntry.)

[in] FilterDriverContext

驅動程式所配置內容區域的控制碼,其中驅動程式會維護狀態和設定資訊。

FilterDriverCharacteristics

的指標 NDIS_FILTER_DRIVER_CHARACTERISTICS 篩選驅動程式以其 FilterXxx 函式進入點建立和初始化的結構。

[out] NdisFilterDriverHandle

控制碼變數的指標。 如果呼叫 NdisFRegisterFilterDriver 成功,NDIS 會以篩選驅動程式控制碼填入此變數。 篩選驅動程式會儲存此控制碼,稍後將此控制碼傳遞至 NDIS 函式,例如 NdisFDeregisterFilterDriver,需要篩選驅動程式控制碼做為輸入參數。

傳回值

NdisFRegisterFilterDriver 會傳回下列其中一個狀態值:
傳回碼 描述
NDIS_STATUS_SUCCESS
如果 NdisFRegisterFilterDriver 已註冊篩選驅動程式,則會傳回NDIS_STATUS_SUCCESS。
NDIS_STATUS_BAD_VERSION
FilterCharacteristics結構之 MajorNdisVersion成員中指定的版本無效。
NDIS_STATUS_BAD_CHARACTERISTICS
至少在 中指定其中一個成員 NDIS_FILTER_DRIVER_CHARACTERISTICS 無效。
NDIS_STATUS_INVALID_PARAMETER
驅動程式至少傳遞至的其中一個輸入參數 NdisFRegisterFilterDriver 無效。
NDIS_STATUS_RESOURCES
NdisFRegisterFilterDriver 因為資源不足而失敗。
NDIS_STATUS_FAILURE
如果上述值都未套用,NdisFRegisterFilterDriver會傳回NDIS_STATUS_FAILURE。

備註

篩選驅動程式會呼叫 NdisFRegisterFilterDriver 函式來自其 DriverEntry 常式。 如需 DriverEntry的詳細資訊,請參閱 NDIS 篩選驅動程式的 DriverEntry

呼叫 NdisFRegisterFilterDriver 的驅動程式必須準備好立即呼叫其任何 FilterXxx 函式。 如需詳細資訊,請參閱 初始化篩選驅動程式

每個篩選驅動程式都會藉由設定 來匯出一組 FilterXxx 函式 NDIS_FILTER_DRIVER_CHARACTERISTICS 結構和呼叫 NdisFRegisterFilterDriver。 NDIS 會將此結構複製到 NDIS 程式庫的內部儲存體。

為了允許篩選驅動程式註冊選擇性服務,NDIS 會在 的內容中呼叫 FilterSetOptions 函式 NdisFRegisterFilterDriver

註冊之後,篩選驅動程式稍後可以呼叫 NdisSetOptionalHandlers 函式來變更選擇性 FilterXxx 函式的進入點。

篩選驅動程式呼叫 NdisFDeregisterFilterDriver 函 式,以釋放先前使用 配置的資源 NdisFRegisterFilterDriver

規格需求

   
最低支援的用戶端 NDIS 6.0 和更新版本支援。
目標平臺 桌面
標頭 ndis.h (包含 Ndis.h)
程式庫 Ndis.lib
IRQL PASSIVE_LEVEL
DDI 合規性規則 Irql_Filter_Driver_Function (ndis) NdisFDeregisterFilterDriver (ndis)

另請參閱

NDIS 篩選驅動程式的 DriverEntry

FilterAttach

初始化篩選驅動程式

NDIS_FILTER_DRIVER_CHARACTERISTICS

NdisFDeregisterFilterDriver

NdisSetOptionalHandlers