Share via


ITransactionExportFactory::GetRemoteClassId

 

Applies To: Windows 10, Windows 7, Windows 8, Windows 8.1, Windows Server 2008, Windows Server 2008 R2, Windows Server 2012, Windows Server 2012 R2, Windows Server Technical Preview, Windows Vista

GetRemoteClassId returns the class identifier of the local transaction manager. The class identifier can be used to ensure that a transaction manager of the proper type is present on the remote system. Having compatible transaction managers on the two systems makes it possible to propagate transactions between the systems.

Syntax

  
HRESULT GetRemoteClassId(   CLSID * pclsid);  

Parameters

pclsid
[out] Pointer to the class identifier of the local transaction manager.

Return Values

S_OK
Success.

E_INVALIDARG
The value of pclsid is NULL.

Remarks

This method need not be called when DTC is the only transaction manager being used. This method is present so that vendors other than Microsoft can provide OLE Transactions compliant transaction managers. These transaction managers could be used in place of DTC or in conjunction with it.

Resource managers that wish to work with a variety of transaction manager should have their RM proxy call this method. The RM proxy should examine the value returned in pclsid. If pclsid is CLSID_M01_MSDtcTmProxy, then DTC is being used as the local transaction manager. In this case, the remote resource manager can call the DtcGetTransactionManager helper function on the remote system. This will connect the remote resource manager to the DTC proxy Core Object on its system*.* The remote resource manager should call CoCreateInstance on the remote system with a class identifier of *pclsid if pclsid is other than CLSID_M01_MSDtcTmProxy. This will connect the remote resource manager to the appropriate transaction manager on that system.

Requirements

For an explanation of the requirement values, see Requirements (Component Services).

Platforms: Windows Server 2016, Windows 10, Windows Server 2012 R2, Windows 8.1, Windows Server 2012, Windows 8, Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista

Header: Declared in txcoord.h

See Also

ITransactionImport