OleGetAutoConvert

Determines whether the registry is set for objects of a specified CLSID to be automatically converted to another CLSID, and if so, retrieves the new CLSID.

WINOLEAPI OleGetAutoConvert(
  REFCLSID clsidOld,   //CLSID of the object to be converted
  LPCLSID pClsidNew    //Pointer to new CLSID for object being 
                       // converted
);
 

Parameters

clsidOld
[in] CLSID for an object to determine whether that CLSID is set for automatic conversion.
pClsidNew
[out] Pointer to where the new CLSID, if any, is written. If auto-conversion for clsidOld is not set in the registry, clsidOld is written to that location. The pClsidNew parameter is never NULL.

Return Values

This function supports the standard return values E_INVALIDARG, E_OUTOFMEMORY, and E_UNEXPECTED, as well as the following:

S_OK
IA value was successfully returned through the pclsidNew parameter.
REGDB_E_CLASSNOTREG
The clsidOld CLSID is not properly registered in the registry.
REGDB_E_READREGDB
Error reading the registry.
REGDB_E_KEYMISSING
Auto-convert is not active or there was no registry entry for the clsidOld parameter.

Remarks

The OleGetAutoConvert function returns the AutoConvertTo entry in the registry for the specified object. The AutoConvertTo subkey specifies whether objects of a given CLSID are to be automatically converted to a new CLSID. This is usually used to convert files created by older versions of an application to the current version. If there is no AutoConvertTo entry, this function returns the value of clsidOld.

The OleDoAutoConvert function calls OleGetAutoConvert to determine if the object specified is to be converted. A container application that supports object conversion should call OleDoAutoConvert each time it loads an object. If the container uses the OleLoad helper function, it need not call OleDoAutoConvert explicitly because OleLoad calls it internally.

To set up automatic conversion of a given class, you can call the OleSetAutoConvert function (typically in the setup program of an application installation). This function uses the AutoConvertTo subkey to tag a class of objects for automatic conversion to a different class of objects. This is a subkey of the CLSID key, and contains the following information:

QuickInfo

  Windows NT: Use version 3.1 or later.
  Windows: Use Windows 95 or later.
  Windows CE: Unsupported.
  Header: Declared in ole2.h.
  Import Library: Included as a resource in ole32.dll.

See Also

OleSetAutoConvert, OleDoAutoConvert