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:_ServerInfoUseCounter  ; ...
     ... )<1L
         TSTrace Warning "LONGINT(SELF:_COMGlobalData:_ServerInfoUseCounter)<1L"
      END
      IF LONGINT( SELF:_COMGlobalData:_ObjectsWithRegisterAxitCount  ; ...
     ... )<0L
         TSTrace Warning "LONGINT(SELF:_COMGlobalData:_ObjectsWithRegisterAxitCount)<0L"
      END
      IF LONGINT( SELF:_COMGlobalData:_ServerInfoActiveComponents  ; ...
     ... )<0L
         TSTrace Warning "LONGINT(SELF:_COMGlobalData:_ServerInfoActiveComponents)<0L"
      END
      IF LONGINT( SELF:_COMGlobalData:_ServerInfoLockedServers  ; ...
     ... )<0L
         TSTrace Warning "LONGINT(SELF:_COMGlobalData:_ServerInfoLockedServers)<0L"
      END
      loRetVal:=S_OK
   END
   TSTrace Leave
RETURN loRetVal