struktur NDIS_DEVICE_OBJECT_ATTRIBUTES (ndis.h)

Struktur NDIS_DEVICE_OBJECT_ATTRIBUTES menentukan atribut perangkat yang dapat diteruskan oleh filter NDIS atau driver miniport ke fungsi NdisRegisterDeviceEx .

Sintaks

typedef struct _NDIS_DEVICE_OBJECT_ATTRIBUTES {
  NDIS_OBJECT_HEADER Header;
  PNDIS_STRING       DeviceName;
  PNDIS_STRING       SymbolicName;
  PDRIVER_DISPATCH   *MajorFunctions;
  ULONG              ExtensionSize;
  PCUNICODE_STRING   DefaultSDDLString;
  LPCGUID            DeviceClassGuid;
} NDIS_DEVICE_OBJECT_ATTRIBUTES, *PNDIS_DEVICE_OBJECT_ATTRIBUTES;

Anggota

Header

Struktur NDIS_OBJECT_HEADER untuk struktur NDIS_DEVICE_OBJECT_ATTRIBUTES. Atur anggota Jenis struktur yang ditentukan Header ke NDIS_OBJECT_TYPE_DEVICE_OBJECT_ATTRIBUTES, anggota Revisi ke NDIS_DEVICE_OBJECT_ATTRIBUTES_REVISION_1, dan anggota Ukuran ke NDIS_SIZEOF_DEVICE_OBJECT_ATTRIBUTES_REVISION_1.

DeviceName

Penunjuk ke variabel jenis NDIS_STRING yang berisi string Unicode null-dihentikan yang memberi nama objek perangkat. String harus berupa nama jalur lengkap--misalnya, \Device\DeviceName. Untuk Microsoft Windows 2000 dan yang lebih baru, NDIS menentukan jenis NDIS_STRING sebagai jenis UNICODE_STRING .

SymbolicName

Penunjuk ke variabel jenis NDIS_STRING yang berisi string Unicode yang merupakan nama perangkat yang terlihat Win32 sedang didaftarkan. Biasanya, SymbolicName memiliki format berikut: \DosDevices\SymbolicName.

MajorFunctions

Penunjuk ke array satu atau beberapa titik masuk untuk rutinitas pengiriman driver perangkat. Driver harus mengatur jumlah titik masuk pengiriman terpisah yang sama dengan jumlah kode IRP_MJ_XXX yang ditangani driver untuk objek perangkat. Setiap pengiriman rutin dinyatakan sebagai berikut:

NTSTATUS
  (*PDRIVER_DISPATCH) (
    IN PDEVICE_OBJECT  DeviceObject,
    IN PIRP  Irp
);

Rutinitas pengiriman memiliki parameter berikut:

DeviceObject

Objek perangkat untuk rutinitas pengiriman.

Irp

IRP untuk rutinitas pengiriman.

Driver tidak boleh menyediakan titik masuk untuk handler PnP atau Power Management, karena objek perangkat yang dibuat bukan untuk perangkat fisik dan karenanya tidak menerima RUNP PnP atau Power Management.

ExtensionSize

Jumlah byte yang ditentukan driver yang akan dialokasikan untuk ekstensi perangkat objek perangkat. Struktur internal ekstensi perangkat ditentukan driver.

DefaultSDDLString

Representasi string untuk pengaturan keamanan default objek perangkat. Keamanan yang diterapkan ke objek perangkat berasal dari string ini.

Pengaturan keamanan ditentukan dalam subset Bahasa Definisi Deskriptor Keamanan (SDDL). Satu set konstanta yang telah ditentukan sebelumnya (SDDL_DEVOBJ_XXX) juga disediakan. Untuk informasi selengkapnya, lihat Mengamankan Objek Perangkat.

DeviceClassGuid

Dicadangkan untuk NDIS. Atur anggota ini ke NULL.

Keterangan

Filter NDIS atau driver miniport dapat memanggil fungsi NdisRegisterDeviceEx untuk mendaftarkan perangkat. Untuk menentukan atribut perangkat, driver mengalokasikan dan menginisialisasi struktur NDIS_DEVICE_OBJECT_ATTRIBUTES dan meneruskan struktur ke parameter DeviceObjectAttributes dari NdisRegisterDeviceEx.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Didukung di NDIS 6.0 dan yang lebih baru.
Header ndis.h (termasuk Ndis.h)

Lihat juga

NDIS_OBJECT_HEADER

NdisRegisterDeviceEx

UNICODE_STRING