IVssBackupComponentsEx2::SetAuthoritativeRestore method (vsbackup.h)

Marks the restore of a component as authoritative for a replicated data store.


HRESULT SetAuthoritativeRestore(
  [in] VSS_ID             writerId,
  [in] LPCWSTR            wszLogicalPath,
  [in] LPCWSTR            wszComponentName,
  [in] bool               bAuth


[in] writerId

The globally unique identifier (GUID) of the writer class.

[in] ct

The type of the component. See the VSS_COMPONENT_TYPE enumeration for the possible values.

[in] wszLogicalPath

A null-terminated wide character string containing the logical path of the component. For more information, see Logical Pathing of Components.

The value of the string containing the logical path used here should be the same as the string that was used when the component was added.

The logical path can be NULL.

There are no restrictions on the characters that can appear in a non-NULL logical path.

[in] wszComponentName

A null-terminated wide character string containing the name of the component.

The string cannot be NULL and should contain the same component name as the string that was used when the component was added to the backup set using the IVssBackupComponents::AddComponent method.

[in] bAuth

Set this variable to true to indicate that the restore of the component is authoritative, or false otherwise.

The default value is false.

Return value

The following are the valid return codes for this method.

Value Meaning
The restore of the component was successfully set to authoritative or nonauthoritative.
One of the parameter values is not valid.
The caller is out of memory or other system resources.
This method was not called during a restore operation.
The specified component was not found.
Unexpected error. The error code is logged in the error log file. For more information, see Event and Error Handling Under VSS.

Windows Server 2008, Windows Vista, Windows Server 2003 and Windows XP:  This value is not supported until Windows Server 2008 R2 and Windows 7. E_UNEXPECTED is used instead.


The SetAuthoritativeRestore method can only be called during a restore operation.

A writer indicates that it supports authoritative restore by setting the VSS_BS_AUTHORITATIVE_RESTORE flag in its backup schema mask.

For more information, see Setting VSS Restore Options.


Minimum supported client Windows Vista [desktop apps only]
Minimum supported server Windows Server 2008 [desktop apps only]
Target Platform Windows
Header vsbackup.h (include VsBackup.h, Vss.h, VsWriter.h)
Library VssApi.lib

See also