'Tempo de cache em minutos
Const WebCacheTime = 20
'Sinalizador de cache, usado ao instalar vários sistemas em um espaço
Const WebCacheFlag = "Cache"
'Defina o nome e o valor do cache
Função SetCache(ByVal CacheName, ByVal CacheValue)
Escurecer CacheData
CacheName = LCase(ChangeChr(CacheName))
CacheData = Aplicativo (WebCacheFlag e CacheName)
Se IsArray(CacheData) Então
CacheData(0) = CacheValue
CacheData(1) = Agora()
Outro
ReDim CacheData(2)
CacheData(0) = CacheValue
CacheData(1) = Agora()
Terminar se
Aplicativo.Lock
Aplicativo (WebCacheFlag e CacheName) = CacheData
Aplicativo.UnLock
End Function
' Obtém o nome do cache
Função GetCache (ByVal CacheName)
Escurecer CacheData
CacheName = LCase(ChangeChr(CacheName))
CacheData = Aplicativo (WebCacheFlag e CacheName)
Se IsArray(CacheData) Então GetCache = CacheData(0) Else GetCache = ""
End Function
'Detectar nome do cache do cache
Função ChkCache (ByVal CacheName)
Escurecer CacheData
ChkCache = Falso
CacheName = LCase(ChangeChr(CacheName))
CacheData = Aplicativo (WebCacheFlag e CacheName)
Se não for IsArray (CacheData), então saia da função
Se não for IsDate(CacheData(1)) então saia da função
Se DateDiff("s", CDate(CacheData(1)), Now()) < 60 * WebCacheTime Then ChkCache = True
Função final