Fungsi StorPortRegistryRead (storport.h)
Rutinitas StorPortRegistryRead membaca data registri untuk perangkat dan nilai yang ditunjukkan.
Sintaks
BOOLEAN StorPortRegistryRead(
PVOID HwDeviceExtension,
PUCHAR ValueName,
ULONG Global,
ULONG Type,
PUCHAR Buffer,
PULONG BufferLength
);
Parameter
HwDeviceExtension
Penunjuk ke ekstensi perangkat keras. Ini adalah area penyimpanan per HBA yang dialokasikan dan diinisialisasi driver port atas nama driver miniport. Driver Miniport biasanya menyimpan informasi khusus HBA dalam ekstensi ini, seperti status HBA dan rentang akses yang dipetakan untuk HBA. Area ini tersedia untuk driver miniport segera setelah driver miniport memanggil StorPortInitialize. Pengandar porta membebaskan memori ini ketika melepas perangkat. Driver miniport harus berjalan di IRQL PASSIVE_LEVEL ketika memanggil rutinitas ini.
ValueName
Penunjuk ke UCHAR yang menentukan nama nilai registri yang kontennya akan dibaca.
Global
Menunjukkan, ketika bukan nol, driver port membaca konten nilai registri yang ditentukan oleh ValueName di bawah subkuntang Parameter\Perangkat. Nilai di bawah Kunci perangkat berlaku untuk semua adaptor dalam sistem. Ketika Global adalah nol, driver port membaca konten nilai registri yang ditentukan oleh ValueName di bawah subkunci Parameters\Device(d), di mana (d) adalah nilai desimal yang sesuai dengan nomor port adaptor tertentu. Dalam hal ini, data yang diambil khusus adaptor.
Type
Menunjukkan jenis data nilai registri. Parameter ini harus memiliki salah satu nilai dalam tabel berikut.
Jenis data nilai registri | Makna |
---|---|
REG_NONE | Tidak ada tipe data yang ditentukan. |
REG_SZ | Menunjukkan string Unicode yang dihentikan NULL. |
REG_EXPAND_SZ | Menunjukkan string Unicode yang dihentikan NULL yang menyertakan variabel lingkungan yang harus diperluas untuk mendapatkan string lengkap. Misalnya, nama jalur mungkin disimpan sebagai string berikut: "%USERPROFILE%\Application Data ". Dalam contoh ini, variabel lingkungan USERPROFILE harus diperluas untuk mendapatkan nama jalur yang sebenarnya. |
REG_BINARY | Menunjukkan data biner mentah. |
REG_DWORD | Menunjukkan nilai kata ganda 32-bit. |
REG_DWORD_LITTLE_ENDIAN | Menunjukkan nilai kata ganda 32-bit, dalam urutan little-endian. Ini identik dengan REG_DWORD. |
REG_DWORD_BIG_ENDIAN | Menunjukkan nilai kata ganda 32-bit, dalam urutan big-endian. |
REG_LINK | Menunjukkan string Unicode yang berisi tautan simbolis. |
REG_MULTI_SZ | Menunjukkan serangkaian string yang dihentikan NULL. |
REG_RESOURCE_LIST | Menunjukkan bahwa nilai registri berisi daftar sumber daya perangkat keras, juga dikenal sebagai "peta sumber daya perangkat keras", yang disimpan di bawah sarang HKEY_LOCAL_MACHINE\HARDWARE\ResourceMap. |
REG_FULL_RESOURCE_DESCRIPTOR | Menunjukkan bahwa nilai registri berisi deskripsi sumber daya perangkat keras yang disimpan di bawah sarang HKEY_LOCAL_MACHINE\HARDWARE\Description. |
REG_RESOURCE_REQUIREMENTS_LIST | Menunjukkan bahwa nilai registri berisi daftar persyaratan sumber daya perangkat keras yang disimpan di bawah pohon HKEY_LOCAL_MACHINE\HARDWARE\ResourceMap. |
REG_QWORD | Menunjukkan bahwa nilai registri berisi angka 64-bit. |
REG_QWORD_LITTLE_ENDIAN | Menunjukkan bahwa nilai registri berisi angka 64-bit. Ini adalah jenis data yang sama dengan REG_QWORD. |
Buffer
Penunjuk ke buffer tempat informasi registri yang diambil akan dilaporkan.
BufferLength
Penunjuk ke ULONG yang berisi ukuran, dalam byte, dari data registri yang dikembalikan.
Mengembalikan nilai
StorPortRegistryRead mengembalikan nilai Boolean TRUE jika data yang ditunjukkan oleh ValueName berhasil dikonversi menjadi ASCII dan disalin ke dalam buffer. Rutinitas ini mengembalikan FALSE jika terjadi kesalahan.
Keterangan
Jika StorPortRegistryRead mengembalikan FALSE dengan nilai bukan nol dalam parameter BufferLength, buffer yang diteruskan terlalu kecil dan parameter BufferLength mencerminkan ukuran buffer yang benar yang harus digunakan. Jika rutin mengembalikan FALSE dengan parameter BufferLength diatur ke nol, kesalahan lain telah terjadi.
Buffer yang digunakan dalam rutinitas ini dialokasikan dengan memanggil StorPortAllocateRegistryBuffer dan dibebaskan dengan memanggil StorPortFreeRegistryBuffer.
Persyaratan
Persyaratan | Nilai |
---|---|
Target Platform | Universal |
Header | storport.h (termasuk Storport.h) |
Pustaka | Storport.lib |
IRQL | PASSIVE_LEVEL |
Aturan kepatuhan DDI | StorPortIrql(storport) |
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