The IPropData::HrGetPropAccess method retrieves the access level and status for one or more of the object's properties.
HRESULT HrGetPropAccess(
LPSPropTagArray FAR * lppPropTagArray,
ULONG FAR * FAR * lprgulAccess
);
On output, contains an array of property tags for which access and status flags were retrieved. The flags are stored in the array pointed to by lprgulAccess.
For each property tag, the following flags can be set:
Access level flag | Status flag |
---|---|
IPROP_READONLY, indicating that the property cannot be modified | IPROP_CLEAN, indicating that the property has not been modified. |
IPROP_READWRITE, indicating that the property can be modified. | IPROP_DIRTY, indicating that the property has been modified. |
The IPropData::HrGetPropAccess method retrieves a set of flags indicating the access level and status for one or more properties.
HrGetPropAccess can be used:
If one of the properties in the property tag array pointed to by lppPropTagArray has been deleted, HrGetPropAccess sets the array entry to zero on output. If you set lppPropTagArray to NULL and one of the object's properties has been deleted, the deleted property is returned in the array.
If a property has been modified, its IPROP_DIRTY flag is set in the corresponding entry in the array pointed to by lprgulAccess. Neither IPROP_READONLY or IPROP_READWRITE will be set.
If a property has not been modified or deleted, only an access level flag will be set: IPROP_READONLY or IPROP_READWRITE.