hola gente... bue muchos van a respodner que brre con kill o con filsesystemObject ... ya probe muchas formas y no pude.
si alguien me podria decir de que manera ahcerlo, se agradece.
salu2
| ||||
Respuesta: borrar cookies y temporales de internet Hola, la mejor forma es usar las apis FindFirstUrlCacheEntry, FindNextUrlCacheEntry, DeleteUrlCacheEntry, y FindCloseUrlCache....aca te paso un ejemplo..añadi un listbox y 2 botones al formulario..con el primer boton te lista los temporales en el listbox y con el otro borras todo...
Código:
saludos. Option Explicit Private Const ERROR_CACHE_FIND_FAIL As Long = 0 Private Const ERROR_CACHE_FIND_SUCCESS As Long = 1 Private Const ERROR_FILE_NOT_FOUND As Long = 2 Private Const ERROR_ACCESS_DENIED As Long = 5 Private Const ERROR_INSUFFICIENT_BUFFER As Long = 122 Private Const MAX_PATH As Long = 260 Private Const MAX_CACHE_ENTRY_INFO_SIZE As Long = 4096 Private Const LMEM_FIXED As Long = &H0 Private Const LMEM_ZEROINIT As Long = &H40 Private Const LPTR As Long = (LMEM_FIXED Or LMEM_ZEROINIT) Private Const NORMAL_CACHE_ENTRY As Long = &H1 Private Const EDITED_CACHE_ENTRY As Long = &H8 Private Const TRACK_OFFLINE_CACHE_ENTRY As Long = &H10 Private Const TRACK_ONLINE_CACHE_ENTRY As Long = &H20 Private Const STICKY_CACHE_ENTRY As Long = &H40 Private Const SPARSE_CACHE_ENTRY As Long = &H10000 Private Const COOKIE_CACHE_ENTRY As Long = &H100000 Private Const URLHISTORY_CACHE_ENTRY As Long = &H200000 Private Const URLCACHE_FIND_DEFAULT_FILTER As Long = NORMAL_CACHE_ENTRY Or COOKIE_CACHE_ENTRY Or URLHISTORY_CACHE_ENTRY Or TRACK_OFFLINE_CACHE_ENTRY Or TRACK_ONLINE_CACHE_ENTRY Or STICKY_CACHE_ENTRY Private Type FILETIME dwLowDateTime As Long dwHighDateTime As Long End Type Private Type INTERNET_CACHE_ENTRY_INFO dwStructSize As Long lpszSourceUrlName As Long lpszLocalFileName As Long CacheEntryType As Long dwUseCount As Long dwHitRate As Long dwSizeLow As Long dwSizeHigh As Long LastModifiedTime As FILETIME ExpireTime As FILETIME LastAccessTime As FILETIME LastSyncTime As FILETIME lpHeaderInfo As Long dwHeaderInfoSize As Long lpszFileExtension As Long dwExemptDelta As Long End Type Private Declare Function FindFirstUrlCacheEntry Lib "wininet" Alias "FindFirstUrlCacheEntryA" (ByVal lpszUrlSearchPattern As String, lpFirstCacheEntryInfo As Any, lpdwFirstCacheEntryInfoBufferSize As Long) As Long Private Declare Function FindNextUrlCacheEntry Lib "wininet" Alias "FindNextUrlCacheEntryA" (ByVal hEnumHandle As Long, lpNextCacheEntryInfo As Any, lpdwNextCacheEntryInfoBufferSize As Long) As Long Private Declare Function FindCloseUrlCache Lib "wininet" (ByVal hEnumHandle As Long) As Long Private Declare Function DeleteUrlCacheEntry Lib "wininet" Alias "DeleteUrlCacheEntryA" (ByVal lpszUrlName As String) As Long Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (pDest As Any, pSource As Any, ByVal dwLength As Long) Private Declare Function lstrcpyA Lib "kernel32" (ByVal RetVal As String, ByVal Ptr As Long) As Long Private Declare Function lstrlenA Lib "kernel32" (ByVal Ptr As Any) As Long Private Declare Function LocalAlloc Lib "kernel32" (ByVal uFlags As Long, ByVal uBytes As Long) As Long Private Declare Function LocalFree Lib "kernel32" (ByVal hMem As Long) As Long Private Sub Command1_Click() Call ListarTemporales MsgBox List1.ListCount & " Archivos Temporales Encontrados.", vbInformation End Sub Private Sub Command2_Click() Dim cachefile As String Dim i As Long For i = 0 To List1.ListCount - 1 cachefile = List1.List(i) Call DeleteUrlCacheEntry(cachefile) Next Call ListarTemporales End Sub Private Sub ListarTemporales() Dim ICEI As INTERNET_CACHE_ENTRY_INFO Dim hFile As Long Dim cachefile As String Dim posUrl As Long Dim posEnd As Long Dim dwBuffer As Long Dim pntrICE As Long List1.Clear dwBuffer = 0 hFile = FindFirstUrlCacheEntry(0&, ByVal 0, dwBuffer) If (hFile = ERROR_CACHE_FIND_FAIL) And _ (Err.LastDllError = ERROR_INSUFFICIENT_BUFFER) Then pntrICE = LocalAlloc(LMEM_FIXED, dwBuffer) If pntrICE Then CopyMemory ByVal pntrICE, dwBuffer, 4 hFile = FindFirstUrlCacheEntry(vbNullString, ByVal pntrICE, dwBuffer) If hFile <> ERROR_CACHE_FIND_FAIL Then Do CopyMemory ICEI, ByVal pntrICE, Len(ICEI) If (ICEI.CacheEntryType And _ NORMAL_CACHE_ENTRY) = NORMAL_CACHE_ENTRY Then cachefile = GetStrFromPtrA(ICEI.lpszSourceUrlName) List1.AddItem cachefile End If Call LocalFree(pntrICE) dwBuffer = 0 Call FindNextUrlCacheEntry(hFile, ByVal 0, dwBuffer) pntrICE = LocalAlloc(LMEM_FIXED, dwBuffer) CopyMemory ByVal pntrICE, dwBuffer, 4 Loop While FindNextUrlCacheEntry(hFile, ByVal pntrICE, dwBuffer) End If End If End If Call LocalFree(pntrICE) Call FindCloseUrlCache(hFile) End Sub Private Function GetStrFromPtrA(ByVal lpszA As Long) As String GetStrFromPtrA = String$(lstrlenA(ByVal lpszA), 0) Call lstrcpyA(ByVal GetStrFromPtrA, ByVal lpszA) End Function
__________________ " Todos Somos Ignorantes; lo que pasa es que no todos ignoramos las mismas cosas " - Albert Einstein |
| ||||
![]() hola seba, la verdad te agradezco muchisimo tu aporte, no tenia manera de borrar lso temps de internet y ahora gracias a tu aporte lo pude hacer. mil gracias neuvamente. salu2 y nuevamente gracias loco. !!!
__________________ LA MUERTE ESTÁ TAN SEGURA DE VENCER QUE NOS DA TODA UNA VIDA DE VENTAJA |