Fungsi NdisOpenFile (ndis.h)
Fungsi NdisOpenFile mengembalikan handel untuk file yang dibuka.
Sintaks
void NdisOpenFile(
[out] PNDIS_STATUS Status,
[out] PNDIS_HANDLE FileHandle,
[out] PUINT FileLength,
[in] PNDIS_STRING FileName,
[in] NDIS_PHYSICAL_ADDRESS HighestAcceptableAddress
);
Parameter
[out] Status
Penunjuk ke variabel yang disediakan penelepon di mana fungsi ini mengembalikan status operasi file terbuka, yang bisa menjadi salah satu hal berikut:
NDIS_STATUS_SUCCESS
Handel di FileHandle berlaku untuk panggilan berikutnya ke NdisMapFile.
NDIS_STATUS_FILE_NOT_FOUND
String yang diberikan di FileName tidak menentukan nama yang ditemukan di namespace objek sistem.
NDIS_STATUS_RESOURCES
NDIS tidak dapat mengalokasikan sumber daya yang diperlukan untuk membuka file dan mengalokasikan buffer untuk konten file.
NDIS_STATUS_ERROR_READING_FILE
Data file yang ditentukan tidak dapat dibaca ke dalam memori sistem untuk akses berikutnya oleh pemanggil.
[out] FileHandle
Penunjuk ke variabel yang disediakan penelepon di mana fungsi ini mengembalikan handel file yang dibuka jika panggilan berhasil.
[out] FileLength
Penunjuk ke variabel yang disediakan penelepon di mana fungsi ini menulis jumlah byte data dalam file yang dibuka jika panggilan berhasil.
[in] FileName
Penunjuk ke jenis NDIS_STRING yang berisi string terhitung yang diinisialisasi, dalam kumpulan karakter default sistem, yang memberi nama file yang akan dibuka. Untuk driver Windows 2000 dan yang lebih baru, string ini berisi karakter Unicode. Artinya, untuk Windows 2000 dan yang lebih baru, NDIS mendefinisikan jenis NDIS_STRING sebagai jenis UNICODE_STRING .
[in] HighestAcceptableAddress
Alamat fisik tertinggi tempat data file dapat disimpan, atau menentukan -1 jika driver tidak menempatkan batasan.
Nilai kembali
Tidak ada
Keterangan
NdisOpenFile membuka file disk, biasanya file yang nantinya akan diunduh driver untuk memprogram NIC cerdas. NdisOpenFile juga mengalokasikan penyimpanan untuk menyimpan konten file untuk panggilan berikutnya driver ke fungsi NdisMapFile .
Driver miniport harus memanggil NdisOpenFile hanya dari fungsi MiniportInitializeEx .
Ketika NdisOpenFile kembali, driver miniport dapat mengakses data file dengan memanggil NdisMapFile. Ini dapat memanggil fungsi NdisUnmapFile untuk membuat halaman file sehingga tidak menggunakan sumber daya yang tidak perlu saat driver tidak mengakses data file. Setelah selesai menggunakan file, MiniportInitializeEx harus memanggil
Fungsi NdisCloseFile .
Catatan
NdisOpenFile, NdisCloseFile, NdisMapFile , dan NdisUnmapFile tidak didukung di ARM64. Pada ARM64, ganti fungsi-fungsi ini dengan panggilan ke ZwCreateFile, ZwReadFile, atau operasi serupa lainnya.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Didukung untuk driver NDIS 6.0 dan NDIS 5.1 (lihat NdisOpenFile (NDIS 5.1)) di Windows Vista. Didukung untuk driver NDIS 5.1 (lihat NdisOpenFile (NDIS 5.1)) di Windows XP. |
Target Platform | Universal |
Header | ndis.h (termasuk Ndis.h) |
Pustaka | Ndis.lib |
IRQL | PASSIVE_LEVEL |
Aturan kepatuhan DDI | Irql_Miscellaneous_Function(ndis) |
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk