CanUnloadNow
(Available in 01 TS COM - TS_COM_ServerInfo)
Source
METHOD CanUnloadNow( ) AS LONG PASCAL CLASS TS_ServerInfo
LOCAL loRetVal AS LONG
TSTrace Enter
// _DebOut32(String2Psz("<(CollectForced[CanUnloadNow]("+ExecName(FALSE)+"))>"))
CollectForced( )
DO CASE
CASE SELF:_COMGlobalData==NULL_OBJECT
TSTrace OutEx "SELF:_COMGlobalData==NULL_OBJECT"
loRetVal:=S_OK
CASE LONGINT( SELF:_COMGlobalData:_ServerInfoUseCounter ; ...
... )>1L
TSTrace OutEx "LONGINT(SELF:_COMGlobalData:_ServerInfoUseCounter)>1L"
loRetVal:=S_FALSE
CASE LONGINT( SELF:_COMGlobalData:_ObjectsWithRegisterAxitCount ; ...
... )>0L
TSTrace OutEx "LONGINT(SELF:_COMGlobalData:_ObjectsWithRegisterAxitCount)>0L"
loRetVal:=S_FALSE
CASE LONGINT( SELF:_COMGlobalData:_ServerInfoActiveComponents ; ...
... )>0L
TSTrace OutEx "LONGINT(SELF:_COMGlobalData:_ServerInfoActiveComponents)>0L"
loRetVal:=S_FALSE
CASE LONGINT( SELF:_COMGlobalData:_ServerInfoLockedServers ; ...
... )>0L
TSTrace OutEx "LONGINT(SELF:_COMGlobalData:_ServerInfoLockedServers)>0L"
loRetVal:=S_FALSE
OTHERWISE
IF LONGINT( SELF:_COMGlobalData