NdisAllocateCloneOidRequest 函式會為新的 NDIS_OID_REQUEST 結構配置記憶體,並將所有資訊從現有的NDIS_OID_REQUEST結構複製到新配置的結構。
語法
NDIS_STATUS NdisAllocateCloneOidRequest(
[in] IN NDIS_HANDLE SourceHandle,
IN PNDIS_OID_REQUEST OidRequest,
[in] IN UINT PoolTag,
OUT PNDIS_OID_REQUEST *ClonedOidRequest
);
參數
[in] SourceHandle
識別篩選模組或中繼驅動程式通訊協議系結的 NDIS 句柄。
OidRequest
現有 NDIS_OID_REQUEST 結構的指標,NDIS 會將資訊複製到新配置的結構。
[in] PoolTag
核心集區標籤。 標記是以單引號分隔的字串,通常以反向順序指定多達四個字元。
ClonedOidRequest
指向NDIS_OID_REQUEST結構的指標。 如果 NDIS 傳回NDIS_STATUS_SUCCESS,NDIS 會提供新的複製NDIS_OID_REQUEST結構的指標;否則,NDIS 會將指標值設定為 NULL。
傳回值
NdisAllocateClonedRequest 可以傳回下列其中一個狀態值:
傳回碼 | 描述 |
---|---|
|
NDIS 已成功配置NDIS_OID_REQUEST結構。 CloneRequest 參數包含NDIS_OID_REQUEST結構的指標。 |
|
配置要求失敗,因為 SourceHandle 指定的 NDIS 句柄無效。 |
|
配置要求失敗,因為 NDIS 沒有足夠的資源來完成配置要求。 |
|
驅動程式因為上述清單中以外的原因而無法配置複製的結構。 |
言論
若要將要求向下轉送至基礎驅動程式,NDIS 中繼驅動程式或篩選驅動程式必須呼叫 NdisAllocateCloneOidRequest 來配置複製的 NDIS_OID_REQUEST 結構。 篩選驅動程式或中繼驅動程式不應將原始NDIS_OID_REQUEST結構轉送至基礎驅動程式。
NdisAllocateCloneOidRequest 配置新的記憶體,並將數據從現有的NDIS_OID_REQUEST結構複製到新的結構。
驅動程式後續必須呼叫 NdisFreeCloneOidRequest 函式,以釋放NDIS_OID_REQUEST結構。
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | NDIS 6.0 和更新版本支援。 |
目標平臺 | 桌面 |
標頭 | ndis.h (包括 Ndis.h) |
連結庫 | Ndis.lib |
IRQL | <= DISPATCH_LEVEL |
DDI 合規性規則 | Irql_OID_Function(ndis) |