ResUtilSetPropertyTable function (resapi.h)

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

Syntax

DWORD ResUtilSetPropertyTable(
  [in]            HKEY                         hkeyClusterKey,
  [in]            const PRESUTIL_PROPERTY_ITEM pPropertyTable,
                  PVOID                        Reserved,
  [in]            BOOL                         bAllowUnknownProperties,
  [in]            const PVOID                  pInPropertyList,
  [in]            DWORD                        cbInPropertyListSize,
  [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.

[out, optional] pOutParams

Pointer to a parameter block to hold returned data. If specified, parameters are only written if they differ from those in the input buffer.

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

If a value specified in the property table already exists in the cluster database, the value is not written. For information on forcing all values to be written, see ResUtilSetPropertyTableEx.

Do not call ResUtilSetPropertyTable from the following resource DLL entry point functions.

ResUtilSetPropertyTable 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

ResUtilSetPropertyTableEx