Export (0) Print
Expand All

NtOpenDirectoryObject function

[This function may be altered or unavailable in the future.]

Opens an existing directory object.

Syntax


NTSTATUS WINAPI NtOpenDirectoryObject(
  _Out_  PHANDLE DirectoryHandle,
  _In_   ACCESS_MASK DesiredAccess,
  _In_   POBJECT_ATTRIBUTES ObjectAttributes
);

Parameters

DirectoryHandle [out]

A handle to the newly opened directory object.

DesiredAccess [in]

An ACCESS_MASK that specifies the requested access to the directory object. This parameter can be one or more of the following values.

ValueMeaning
DIRECTORY_QUERY
0x0001

Query access to the directory object.

DIRECTORY_TRAVERSE
0x0002

Name-lookup access to the directory object.

DIRECTORY_CREATE_OBJECT
0x0004

Name-creation access to the directory object.

DIRECTORY_CREATE_SUBDIRECTORY
0x0008

Subdirectory-creation access to the directory object.

DIRECTORY_ALL_ACCESS
STANDARD_RIGHTS_REQUIRED | 0xF

All of the preceding rights plus STANDARD_RIGHTS_REQUIRED.

 

ObjectAttributes [in]

The attributes for the directory object. To initialize the OBJECT_ATTRIBUTES structure, use the InitializeObjectAttributes macro. For more information, see the documentation for these items in the documentation for the WDK.

Return value

The function returns STATUS_SUCCESS or an error status. The possible status codes include the following.

Return codeDescription
STATUS_INSUFFICIENT_RESOURCES

A temporary buffer required by this function could not be allocated.

STATUS_INVALID_PARAMETER

The specified ObjectAttributes parameter was a NULL pointer, not a valid pointer to an OBJECT_ATTRIBUTES structure, or some of the members specified in the OBJECT_ATTRIBUTES structure were not valid.

STATUS_OBJECT_NAME_INVALID

The ObjectAttributes parameter contained an ObjectName member in the OBJECT_ATTRIBUTES structure that was not valid because an empty string was found after the OBJECT_NAME_PATH_SEPARATOR character.

STATUS_OBJECT_NAME_NOT_FOUND

The ObjectAttributes parameter contained an ObjectName member in the OBJECT_ATTRIBUTES structure that could not be found.

STATUS_OBJECT_PATH_NOT_FOUND

The ObjectAttributes parameter contained an ObjectName member in the OBJECT_ATTRIBUTES structure with an object path that could not be found.

STATUS_OBJECT_PATH_SYNTAX_BAD

The ObjectAttributes parameter did not contain a RootDirectory member, but the ObjectName member in the OBJECT_ATTRIBUTES structure was an empty string or did not contain an OBJECT_NAME_PATH_SEPARATOR character. This indicates incorrect syntax for the object path.

 

Remarks

This function has no associated import library or header file; you must call it using the LoadLibrary and GetProcAddress functions.

Requirements

DLL

Ntdll.dll

See also

NtQueryDirectoryObject

 

 

Community Additions

ADD
Show:
© 2014 Microsoft