DRIVER_PROXY_ENDPOINT_FUNCTION回呼會定義 DriverProxy 系統中熱插拔端點函式的函式簽章。 這是泛型函式指標類型,代表任何可透過驅動程式 Hot-Swap 架構熱插拔的驅動程式函式。
語法
DRIVER_PROXY_ENDPOINT_FUNCTION DriverProxyEndpointFunction;
VOID DriverProxyEndpointFunction()
{...}
返回值
None
備註
端點函式是驅動程式實作的函式,可以在執行階段取代,而不需要卸載驅動程式。 DriverProxy 系統會建立包裝函式,將呼叫重新導向至每個端點函式的目前實作,從而啟用熱插拔功能。
此回呼類型可作為 DriverProxy 系統的泛型函式指標。 實際上,端點函式會根據其特定用途有不同的簽章,但它們都會被視為 DriverProxy 基礎結構內的 DRIVER_PROXY_ENDPOINT_FUNCTION 指標。
在驅動程式 Hot-Swap V2 中,端點函式會在建置程式期間透過編譯器和連結器分析自動探索。 編譯器會識別應該可熱插拔的函式,並將這些函式的相關資訊放在二進位檔的區段中 .shsept 。
端點功能的主要特徵:
- 它們可以在運行時通過 DriverProxy 系統進行替換
- 它們是透過 IoGetDriverProxyWrapperFromEndpoint 所傳回的包裝函式來存取
- 它們必須與 IoCreateDriverProxyExtension 所建立的 DriverProxy 延伸模組相關聯
- 它們的替換是透過 DriverProxy 基礎設施進行協調的,以確保執行緒安全
端點函式的實際 IRQL 需求取決於所實作的特定函式。 驅動程式應該根據其預期用途的 IRQL 條件約束來設計其端點函式。
需求
| Requirement | 價值觀 |
|---|---|
| 目標平臺 | 普遍 |
| Header | wdm.h |
| IRQL | Variable |
另請參閱
IoGetDriverProxyWrapperFromEndpoint