ResUtilSetPropertyTableEx function (resapi.h)

Sets properties in the cluster database based on a property list from a property table.

Syntax

DWORD ResUtilSetPropertyTableEx(
  [in]            HKEY                         hkeyClusterKey,
  [in]            const PRESUTIL_PROPERTY_ITEM pPropertyTable,
                  PVOID                        Reserved,
  [in]            BOOL                         bAllowUnknownProperties,
  [in]            const PVOID                  pInPropertyList,
  [in]            DWORD                        cbInPropertyListSize,
  [in]            BOOL                         bForceWrite,
  [out, optional] LPBYTE                       pOutParams
);

Parameters

[in] hkeyClusterKey

Cluster database key identifying the location of the properties to set.

[in] pPropertyTable

Pointer to an array of RESUTIL_PROPERTY_ITEM structures describing the properties to set.

Reserved

Reserved.

[in] bAllowUnknownProperties

Indicates whether unknown properties should be accepted. This parameter is set to TRUE if they should be accepted and FALSE if not.

[in] pInPropertyList

Pointer to the input buffer containing a property list.

[in] cbInPropertyListSize

Size in bytes of the input buffer pointed to by cbInPropertyList.

[in] bForceWrite

Forces the property values to be written to the cluster database even if the new values are identical to the existing values

[out, optional] pOutParams

Pointer to a parameter block to hold returned data. When this is pointer is specified, only parameters that differ from those in the input buffer are written to the parameter block.

Return value

If the operation succeeds, the function returns ERROR_SUCCESS.

If the operation fails, the function returns a system error code. The following are possible error codes.

Return code Description
ERROR_BAD_ARGUMENTS
One or more of the input parameters were invalid.
ERROR_INSUFFICIENT_BUFFER
The size of the input buffer specified in cbInPropertyListSize is too small.
ERROR_INVALID_DATA
The input buffer pointed to by pInPropertyList is NULL, a property name is not valid, or a property value is too small.
ERROR_INVALID_PARAMETER
The syntax, format, or type of a property in the property table pointed to by pPropertyTable is incorrect, or a property is read-only and cannot be set.

Remarks

Do not call ResUtilSetPropertyTableEx from the following resource DLL entry point functions:

ResUtilSetPropertyTableEx can be safely called from any other resource DLL entry point function or from a worker thread. For more information, see Function Calls to Avoid in Resource DLLs.

Requirements

Requirement Value
Minimum supported client None supported
Minimum supported server Windows Server 2008 Enterprise, Windows Server 2008 Datacenter
Target Platform Windows
Header resapi.h
Library ResUtils.lib
DLL ResUtils.dll

See also

RESUTIL_PROPERTY_ITEM

ResUtilSetPropertyTable