Important:
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.
A version of this page is also available for
4/8/2010

This method assigns the specified class identifier (CLSID) to this storage object.

Syntax

HRESULT SetClass( 
  REFCLSID 
clsid 
);

Parameters

clsid

[in] Class identifier (CLSID) that is to be associated with the storage object.

Return Value

The following table shows the return values for this method.

Value Description

S_OK

The CLSIDwas successfully assigned.

E_PENDING

Asynchronous Storage only: Part or all of the storage's data is currently unavailable.

For more information see the IFillLockBytesinterface and Asynchronous Storage.

STG_E_ACCESSDENIED

The caller does not have sufficient permissions for assigning a class identifier to the storage object.

STG_E_MEDIUMFULL

Not enough space was left on device to complete the operation.

STG_E_REVERTED

The storage object has been invalidated by a revert operation above it in the transaction tree.

Remarks

When first created, a storage object has an associated CLSID of CLSID_NULL. To assign a CLSID to the storage object, call this method.

Call the IStorage::Statmethod to retrieve the current CLSID of a storage object.

To determine whether the platform supports this interface, see Determining Supported COM APIs.

Requirements

Header objidl.h, objidl.idl
Library ole32.lib, uuid.lib
Windows Embedded CE Windows CE 2.0 and later
Windows Mobile Windows Mobile Version 5.0 and later