ChangeSecurityPermissionsEx method of the CIM_Directory class

The ChangeSecurityPermissionsEx method changes the security permissions for the logical directory entry file specified in the object path (this method is an extended version of the ChangeSecurityPermissions method and is inherited from CIM_LogicalFile). If the logical file is a directory, then this method will act recursively, changing the security permissions for all of the files and sub-directories that the directory contains.

Important

The DMTF (Distributed Management Task Force) CIM (Common Information Model) classes are the parent classes upon which WMI classes are built. WMI currently supports only the CIM 2.x version schemas.

This topic uses Managed Object Format (MOF) syntax. For more information about using this method, see Calling a Method.

Syntax

uint32 ChangeSecurityPermissionsEx(
  [in]           Win32_SecurityDescriptor SecurityDescriptor,
  [in]           uint32                   Option,
  [out]          string                   StopFileName,
  [in, optional] string                   StartFileName,
  [in, optional] boolean                  Recursive
);

Parameters

SecurityDescriptor [in]

Specifies security information.

Note

A NULL ACL in the SECURITY_DESCRIPTOR structure grants unlimited access.

Option [in]

Security privilege to modify. For example, to change the owner and DACL security, use

Option = 1 + 4

or

Option = CHANGE_OWNER_SECURITY_INFORMATION | CHANGE_DACL_SECURITY_INFORMATION

CHANGE_OWNER_SECURITY_INFORMATION (1)

Change the owner of the logical file.

CHANGE_GROUP_SECURITY_INFORMATION (2)

Change the group of the logical file.

CHANGE_DACL_SECURITY_INFORMATION (4)

Change the ACL of the logical file.

CHANGE_SACL_SECURITY_INFORMATION (8)

Change the system ACL of the logical file.

StopFileName [out]

String that represents the name of the file (or directory) where the method failed. This parameter has a value of null if the method succeeds.

StartFileName [in, optional]

String that represents the child file (or directory) to use as a starting point for this method. Typically, the StartFileName parameter is the StopFileName parameter specifying the file (or directory) at which an error occurred from the previous method call. If the parameter value is null, the operation is performed on the file or directory specified in the ExecMethod call.

Recursive [in, optional]

If TRUE, the method is also applied recursively to files and directories within the directory specified by the CIM_Directory instance. For file instances, this parameter is ignored.

Return value

Returns a value of 0 (zero) on success, and any other number to indicate an error.

0

Success.

2

Access denied.

8

Unspecified failure.

9

Invalid object.

10

Object already exists.

11

File system not NTFS.

12

Platform not Windows.

13

Drive not the same.

14

Directory not empty.

15

Sharing violation.

16

Invalid start file.

17

Privilege not held.

21

Invalid parameter.

Remarks

This method is currently not implemented by WMI. To use this method, you must implement it in your own provider.

This documentation is derived from the CIM class descriptions published by the DMTF. Microsoft may have made changes to correct minor errors, conform to Microsoft SDK documentation standards, or provide more information.

Requirements

Requirement Value
Minimum supported client
Windows Vista
Minimum supported server
Windows Server 2008
Namespace
Root\CIMV2
MOF
CIMWin32.mof
DLL
CIMWin32.dll

See also

CIM_Directory

CIM_Directory