Bagikan melalui


Fungsi ObQueryNameString (ntifs.h)

Rutinitas ObQueryNameString memasok nama, jika ada satu, dari objek tertentu yang pemanggilnya memiliki penunjuk.

Sintaks

NTSTATUS ObQueryNameString(
  [in]            PVOID                    Object,
  [out, optional] POBJECT_NAME_INFORMATION ObjectNameInfo,
  [in]            ULONG                    Length,
  [out]           PULONG                   ReturnLength
);

Parameter

[in] Object

Penunjuk ke objek yang namanya diminta. Parameter ini diperlukan dan tidak boleh NULL.

[out, optional] ObjectNameInfo

Penunjuk ke buffer yang dialokasikan pemanggil, dari jenis berikut, yang menerima informasi nama objek:

typedef struct _OBJECT_NAME_INFORMATION {
  UNICODE_STRING Name;
} OBJECT_NAME_INFORMATION, *POBJECT_NAME_INFORMATION;

Parameter ini bersifat opsional dan dapat berupa NULL. Jika ObjectNameInfoADALAH NULL, Panjang harus nol.

[in] Length

Ukuran, dalam byte, dari buffer yang diacu oleh ObjectNameInfo. Parameter ini bersifat opsional dan bisa nol. Jika Panjang adalah nol, ReturnLength menerima ukuran, dalam byte, dari buffer yang diperlukan untuk menyimpan informasi nama objek. Ukuran yang wajar bagi buffer untuk mengakomodasi sebagian besar nama objek adalah 1024 byte. Jika Panjang adalah nol, ObjectNameInfo bisa null.

[out] ReturnLength

Penunjuk ke variabel yang dialokasikan penelepon yang menerima ukuran, dalam byte, dari informasi nama objek yang dikembalikan. Nama objek (jika ada) menyertakan NULL-terminator dan semua pemisah jalur "\" dalam nama. Jika ObQueryNameString mengembalikan STATUS_INFO_LENGTH_MISMATCH, parameter ini akan diatur ke panjang buffer yang diperlukan.

Nilai kembali

ObQueryNameString mengembalikan nilai STATUS_SUCCESS atau NTSTATUS seperti berikut ini:

Menampilkan kode Deskripsi
STATUS_INFO_LENGTH_MISMATCH
Buffer yang ditunjukkan oleh ObjectNameInfo terlalu kecil untuk menyimpan informasi nama objek yang diminta. ReturnLength menunjuk ke ukuran buffer yang diperlukan. Dalam hal ini, tidak ada informasi nama objek yang dikembalikan. Ini adalah kode kesalahan. Ketahuilah bahwa jika Panjang diatur ke nol, STATUS_INFO_LENGTH_MISMATCH dikembalikan.

Keterangan

Jika objek yang diberikan diberi nama dan nama objek berhasil diperoleh, string yang dikembalikan adalah nama objek yang diberikan termasuk sebanyak mungkin jalur lengkap objek. Dalam hal ini, ObQueryNameString mengatur Name.Buffer ke alamat nama objek yang dihentikan NULL dari objek yang ditentukan. Nilai Name.MaximumLength adalah panjang nama objek termasuk penghentian NULL . Nilai Name.Length adalah panjang dari satu-satunya nama objek.

Jika objek yang diberikan tidak bernama, atau jika nama objek tidak berhasil diperoleh, ObQueryNameString mengatur Name.Buffer ke NULL dan mengatur Name.Length dan Name.MaximumLength ke nol.

Penyimpanan untuk ObjectNameInfo dapat dialokasikan dari kumpulan halaman atau tidak bertepatan.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 2000
Target Platform Universal
Header ntifs.h (termasuk FltKernel.h, Ntifs.h)
Pustaka NtosKrnl.lib
DLL NtosKrnl.exe
IRQL < DISPATCH_LEVEL

Lihat juga

UNICODE_STRING