IVssExamineWriterMetadata::GetIdentity method (vsbackup.h)

The GetIdentity method obtains basic information about a specific writer instance.

Syntax

HRESULT GetIdentity(
  [out] VSS_ID          *pidInstance,
  [out] VSS_ID          *pidWriter,
  [out] BSTR            *pbstrWriterName,
  [out] VSS_USAGE_TYPE  *pUsage,
  [out] VSS_SOURCE_TYPE *pSource
);

Parameters

[out] pidInstance

The address of a caller-allocated variable that receives the instance identifier of the writer.

[out] pidWriter

The address of a caller-allocated variable that receives the class identifier of the writer.

[out] pbstrWriterName

The address of a caller-allocated variable that receives a string that contains the name of the writer.

[out] pUsage

The address of a caller-allocated variable that receives a VSS_USAGE_TYPE enumeration value that specifies how the data managed by the writer is used on the host system.

[out] pSource

The address of a caller-allocated variable that receives a VSS_SOURCE_TYPE enumeration value that specifies the type of data managed by the writer.

Return value

The following are the valid return codes for this method.

Value Meaning
S_OK
Successfully returned the identity information.
E_INVALIDARG
One of the parameter values is not valid.
E_OUTOFMEMORY
The caller is out of memory or other system resources.
VSS_E_INVALID_XML_DOCUMENT
The XML document is not valid. Check the event log for details. For more information, see Event and Error Handling Under VSS.
VSS_E_UNEXPECTED
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.

Remarks

The caller must free the memory held by the pbstrWriterName parameter by calling SysFreeString.

An IVssExamineWriterMetadata interface might be from stored writer state information (created by a call to CreateVssExamineWriterMetadata). If this is the case, then the following are true:

  • pidInstance may not mean anything in terms of live writers.
  • If pidWriter does not match the writer class of any live writer, a requester should not use that writer's components.

Requirements

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

See also

CreateVssExamineWriterMetadata

IVssExamineWriterMetadata

VSS_SOURCE_TYPE

VSS_USAGE_TYPE