NtQueryDirectoryObject 函数

[此函数将来可能会更改或不可用。]

检索有关指定目录对象的信息。

语法

NTSTATUS WINAPI NtQueryDirectoryObject(
  _In_      HANDLE  DirectoryHandle,
  _Out_opt_ PVOID   Buffer,
  _In_      ULONG   Length,
  _In_      BOOLEAN ReturnSingleEntry,
  _In_      BOOLEAN RestartScan,
  _Inout_   PULONG  Context,
  _Out_opt_ PULONG  ReturnLength
);

parameters

DirectoryHandle [in]

目录对象的句柄。

Buffer [out, optional]

指向接收目录信息的缓冲区的指针。 此缓冲区接收一个或多个 OBJECT_DIRECTORY_INFORMATION 结构,最后一个结构为 NULL,后跟包含目录条目名称的字符串。 有关详细信息,请参阅“备注”。

Length [in]

用户提供的输出缓冲区的大小(以字节为单位)。

ReturnSingleEntry [in]

指示函数是否应仅返回单个条目。

RestartScan [in]

指示是重新启动扫描还是使用 Context 参数中传递的信息继续枚举。

Context [in, out]

枚举上下文。

ReturnLength [out, optional]

指向变量的指针,该变量接收输出缓冲区中返回的目录信息的长度(以字节为单位)。

返回值

函数返回 STATUS_SUCCESS 或错误状态。

备注

下面是 OBJECT_DIRECTORY_INFORMATION 结构的定义。

typedef struct _OBJECT_DIRECTORY_INFORMATION {
    UNICODE_STRING Name;
    UNICODE_STRING TypeName;
} OBJECT_DIRECTORY_INFORMATION, *POBJECT_DIRECTORY_INFORMATION;

此函数没有关联的导入库或头文件;必须使用 LoadLibraryGetProcAddress 函数调用它。

要求

要求
DLL
Ntdll.dll

请参阅

NtOpenDirectoryObject