IofGetDriverProxyWrapperFromEndpoint 函式會使用端點函式指標,取得端點函式包裝函式的指標。
語法
NTSTATUS IofGetDriverProxyWrapperFromEndpoint(
PDRIVER_PROXY_EXTENSION DriverProxyExtension,
PDRIVER_PROXY_ENDPOINT_FUNCTION Endpoint,
PDRIVER_PROXY_WRAPPED_ENDPOINT_FUNCTION *Wrapper
);
參數
DriverProxyExtension
[在]端點註冊之 DriverProxy 延伸模組的指標。 此延伸模組是在先前呼叫 IoCreateDriverProxyExtension 中建立。
Endpoint
[在]指向要尋找包裝函式的端點函式的指標。 這必須是先前向 IoRegisterDriverProxyEndpoints 註冊的函式指標。
Wrapper
[出]變數的指標,其接收包裝端點函式的指標。 如果找到端點,這將指向應該呼叫的包裝函式,而不是原始端點。
返回值
IofGetDriverProxyWrapperFromEndpoint 會傳回下列其中一個 NTSTATUS 值:
| 回傳碼 | Description |
|---|---|
| STATUS_SUCCESS | 包裝函式被成功找到並傳回。 |
| STATUS_NOT_FOUND | 在已註冊的端點中找不到指定的端點函式。 |
備註
此函式是在驅動程式 Hot-Swap V2 中擷取端點包裝函式的標準方法。 傳遞至此函式的端點指標必須完全符合自動端點列舉程式期間所識別的指標。
若要避免呼叫此函式時出現編譯器警告,您可能需要轉換 Endpoint 和 Wrapper 參數。 為了方便起見,提供了一個巨集 IoGetDriverProxyWrapperFromEndpoint ,可自動處理類型轉換。 建議使用巨集,而不是直接呼叫此函數。
函式可以在任何 IRQL 層級呼叫,並執行快速查閱作業。
取得包裝函式之後,驅動程式應該呼叫包裝函式,而不是原始端點函式,以啟用熱插拔功能。
需求
| Requirement | 價值觀 |
|---|---|
| 目標平臺 | 普遍 |
| Header | wdm.h |
| Library | NtosKrnl.lib |
| IRQL | 任何層級 |