NdisAllocateSharedMemory 函式會從共用記憶體提供者配置共用記憶體。
語法
NDIS_STATUS NdisAllocateSharedMemory(
[in] NDIS_HANDLE NdisHandle,
[in] PNDIS_SHARED_MEMORY_PARAMETERS SharedMemoryParameters,
[in, out] PNDIS_HANDLE pAllocationHandle
);
參數
[in] NdisHandle
在呼叫端初始化期間取得的 NDIS 驅動程式或實例句柄。 例如,迷你埠驅動程式可以使用從 取得的 NDIS 句柄 NdisMRegisterMiniportDriver 或 MiniportInitializeEx 函式。 其他 NDIS 驅動程式可以使用下列函式中的句柄:
[in] SharedMemoryParameters
的指標 NDIS_SHARED_MEMORY_PARAMETERS 結構,定義共用記憶體的要求屬性。
[in, out] pAllocationHandle
識別已配置之共享記憶體之句柄位置的指標。 當函式傳回或函式失敗時,NULL 時,可以使用句柄。 呼叫端必須使用這個句柄來釋放已成功配置的共享記憶體。
傳回值
NdisAllocateSharedMemory 可以傳回下列狀態值:
| 傳回碼 | 描述 |
|---|---|
|
作業已順利完成。 |
|
作業失敗,因為沒有足夠的資源無法完成作業。 |
|
作業失敗,因為輸入參數無效。 |
|
作業因未指定的原因而失敗。 |
言論
SharedMemoryParameters 參數包含 的指標 NDIS_SHARED_MEMORY_PARAMETERS 結構,定義共用記憶體的要求屬性。 如果未在 旗標 成員中設定 NDIS_SHARED_MEM_PARAMETERS_CONTIGUOUS 旗標,則可以在包含在非連續記憶體的散佈收集清單中指定共用記憶體。
NDIS 會從呼叫 NdisAllocateSharedMemory的內容呼叫共用記憶體提供者的 NetAllocateSharedMemory 函式。
驅動程式必須呼叫 NdisFreeSharedMemory 函式,以釋放其配置給 NdisAllocateSharedMemory的共用記憶體。
要求
| 要求 | 價值 |
|---|---|
| 最低支援的用戶端 | NDIS 6.20 和更新版本支援。 |
| 目標平臺 | 普遍 |
| 標頭 | ndis.h (包括 Ndis.h) |
| 連結庫 | Ndis.lib |
| IRQL | PASSIVE_LEVEL |