Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Panggil fungsi NdisAllocateNetBufferPool untuk mengalokasikan kumpulan struktur NET_BUFFER .
Sintaks
NDIS_EXPORTED_ROUTINE NDIS_HANDLE NdisAllocateNetBufferPool(
[in, optional] NDIS_HANDLE NdisHandle,
[in] NET_BUFFER_POOL_PARAMETERS const *Parameters
);
Parameter
[in, optional] NdisHandle
Handel NDIS yang diperoleh selama inisialisasi penelepon.
[in] Parameters
Penunjuk ke struktur NET_BUFFER_POOL_PARAMETERS yang menentukan parameter untuk kumpulan. Struktur didefinisikan sebagai berikut:
typedef struct _NET_BUFFER_POOL_PARAMETERS {
NDIS_OBJECT_HEADER Header;
ULONG PoolTag;
ULONG DataSize;
} NET_BUFFER_POOL_PARAMETERS, *PNET_BUFFER_POOL_PARAMETERS;
Struktur ini mencakup anggota berikut:
Header
Struktur NDIS_OBJECT_HEADER untuk struktur NET_BUFFER_POOL_PARAMETERS. Atur anggota Jenis struktur yang ditentukan Header ke NDIS_OBJECT_TYPE_DEFAULT, anggota Revisi ke NET_BUFFER_POOL_PARAMETERS_REVISION_1, dan anggota Ukuran ke NDIS_SIZEOF_NET_BUFFER_POOL_PARAMETERS_REVISION_1.
PoolTag
Tag kumpulan kernel yang digunakan pemanggil saat mengalokasikan struktur NET_BUFFER dari kumpulan ini. Tag adalah string, dibatasi oleh tanda kutip tunggal, dengan hingga empat karakter, biasanya ditentukan dalam urutan terbalik. Tag kumpulan kernel membantu NDIS mengidentifikasi pemilik struktur NET_BUFFER yang dialokasikan dari kumpulan ini.
Ukuran Data
Ukuran data default untuk buffer data yang terkait dengan kumpulan ini. Penelepon harus mengatur nilai ini jika memanggil Fungsi NdisAllocateNetBufferMdlAndData . NDIS menggunakan nilai ini untuk mengatur ukuran buffer data yang dialokasikan untuk struktur NET_BUFFER. Jika penelepon tidak menggunakan fitur ini, nilai ini harus diatur ke nol.
Mengembalikan nilai
NdisAllocateNetBufferPool mengembalikan handel ke kumpulan struktur NET_BUFFER yang dialokasikan NDIS. Jika alokasi tidak berhasil, handel ini adalah NULL. Handel ini adalah parameter yang diperlukan dalam panggilan berikutnya ke fungsi NDIS yang mengalokasikan dan membebaskan struktur NET_BUFFER dari kumpulan ini.
Keterangan
Panggil fungsi berikut untuk mengalokasikan struktur NET_BUFFER dari kumpulan struktur NET_BUFFER.
NdisAllocateNetBufferMdlAndDataMDL dan buffer data yang dialokasikan dengan NdisAllocateNetBufferMdlAndData tidak boleh dibebaskan terpisah dari struktur NET_BUFFER. Struktur tersebut dibebaskan dengan struktur NET_BUFFER saat Anda memanggil fungsi NdisFreeNetBuffer .
Panggil fungsi NdisFreeNetBufferPool untuk membebaskan NET_BUFFER kumpulan struktur yang dibuat dengan NdisAllocateNetBufferPool.
Persyaratan
| Persyaratan | Nilai |
|---|---|
| Klien minimum yang didukung | Didukung di NDIS 6.0 dan yang lebih baru. |
| Target Platform | Universal |
| Header | ndis/nblapi.h (sertakan ndis.h) |
| Pustaka | Ndis.lib |
| IRQL | <= DISPATCH_LEVEL |
| Aturan kepatuhan DDI | Irql_NetBuffer_Function(ndis), NdisAllocateNetBufferPool(ndis), NdisAllocateNetBufferPool_InitFail(ndis) |