IPropertyStorage::DeletePropertyNames method

The DeletePropertyNames method deletes specified string names from the current property set.

Syntax


HRESULT DeletePropertyNames(
  [in] ULONG        cpropid,
  [inconst PROPID rgpropid[]
);

Parameters

cpropid [in]

The size on input of the array rgpropid. If 0, no property names are deleted.

rgpropid [in]

Property identifiers for which string names are to be deleted.

Return value

This method supports the standard return value E_UNEXPECTED, in addition to the following:

S_OK

Success. The names of all of the indicated properties that exist in this set have been deleted.

STG_E_ACCESSDENIED

The requested access to the property storage object has been denied. No property names were deleted.

STG_E_INSUFFICIENTMEMORY

There is not enough memory to perform this operation. Some property names may not have been deleted.

STG_E_INVALIDPARAMETER

At least one of the parameters is not valid. Some property names may not have been deleted.

Remarks

For each property identifier in rgpropid, IPropertyStorage::DeletePropertyNames removes any corresponding name-to-property ID mapping. An attempt is silently ignored to delete the name of a property that either does not exist or does not currently have a string name associated with it. This method has no effect on the properties themselves.

Note  All the stored string property names can be deleted by deleting property identifier zero, but cpropid must be equal to 1 for this to be a valid parameter error.
 

Requirements

Minimum supported client

Windows 2000 Professional [desktop apps | UWP apps]

Minimum supported server

Windows 2000 Server [desktop apps | UWP apps]

Header

Propidl.h (include Objbase.h)

Library

Uuid.lib

DLL

Ole32.dll

IID

IID_IPropertyStorage is defined as 00000138-0000-0000-C000-000000000046

See also

IPropertyStorage::ReadPropertyNames

 

 

Show: