OLE32LibraryFree
(Available in 01 TS COM - TS_COM_ServerInfo)
Source
METHOD OLE32LibraryFree( ) AS LOGIC PASCAL CLASS TS_ServerInfo
LOCAL lRetVal AS LOGIC
TSTrace Enter
IF SELF:IsValidObject
// TS_ShowOLE32LibraryUseCount()
IF LOGIC( _CAST, SELF:_COMGlobalData:_ShowOLE32LibraryUseCount ; ...
... )
TSTrace Shw _( SELF:_SuperGlobalData:_OLE32LibraryUseCount ; ...
... )
END
DO CASE
CASE SELF:_SuperGlobalData:_OLE32LibraryUseCount ; ...
... <0L
TSTrace Warning "SELF:_SuperGlobalData:_OLE32LibraryUseCount<0L"
lRetVal:=FALSE
CASE SELF:_SuperGlobalData:_OLE32LibraryUseCount ; ...
... >0L
SELF:_SuperGlobalData:_OLE32LibraryUseCount ; ...
... -=1L
IF SELF:_SuperGlobalData:_OLE32LibraryUseCount ; ...
... ==0L
IF SELF:_SuperGlobalData:_OLE32LibraryHandle ; ...
... <>NULL_PTR
#IFDEF TS_TRACETIMED_ENABLE
_TS_TraceTimedEnter( TS_TT_SYM_EXTERNAL, TS_TT_SYM_DLL_OLE32, # ; ...
... CoUninitialize )
#ENDIF
TS_CoUninitialize( )
#IFDEF TS_TRACETIMED_ENABLE
_TS_TraceTimedLeave(