Red de conocimiento informático - Problemas con los teléfonos móviles - Programación vb6.0

Programación vb6.0

Sabemos que hay algo llamado Cookies en el caché de IE. Podemos encontrarlos a través de IE Tools-gt; Opciones de Internet-gt; Ver archivos. Documentos y configuraciones \Nombre de usuario\Configuración local\Archivos temporales de Internet. Entonces, ¿estos archivos realmente se almacenan aquí? Si conoce los comandos de DOS, puede comprobarlos, solicitar Dir/a para ver las carpetas y archivos ocultos y cd para cambiar la ruta actual. Como resultado, descubrimos a través de los comandos de DOS que las rutas que mostraban eran diferentes de las que mostraban Windows. Resulta que Archivos temporales de Internet es una carpeta especial, como nuestra Papelera de reciclaje, y no una ruta de archivo real. Sin embargo, al asignar uno o más CLSID en el registro de Windows para que apunten a la administración de archivos, nos resulta más difícil operar estos archivos almacenados en caché. Vea el código a continuación

Const privada CACHGROUP_SEARCH_ALL = & H0

Const privada ERROR_NO_MORE_FILES = 18

Const privada ERROR_NO_MORE_ITEMS = 259

Esta es la primera vez que el archivo se almacena en caché.

ITEMS = 259

Const privado CACHEGROUP_FLAG_FLUSHURL_ONDELETE = amp; H2

Const privado BUFFERSIZE = 2048

Const privado COOKIE_ CACHE_ENTRY Mientras = amp;

Const privada URLHISTORY_CACHE_ENTRY Mientras = amp; H200000

Const privada NORMAL_CACHE_ENTRY Mientras = amp H1

Const privada TRACK_OFFLINE_CACHE_ENTRY Mientras = amp; >Const privada TRACK_ONLINE_CACHE_ENTRY Mientras = amp H20

Tipo privado FILETIME

dwLowDateTime Mientras

dwHighDateTime Mientras

Tipo final

Tipo privado INTERNET_CACHE_ENTRY _INFO

dwStructSize tan largo

lpszSourceUrlName tan largo

lpszLocalFileName tan largo

CacheEntryType durante todo el tiempo

dwUseCount durante el tiempo

dwHitRate durante el tiempo

dwSizeLow durante el tiempo

dwSizeHighAs largo durante el tiempo

LastModifiedTime como FILETIME

ExpireTime como FILETIME

LastAccessTime como FILETIME

LastSyncTime como FILETIME

lpHeaderInfo siempre y cuando

dwHeaderInfoSizeAs Long

lpszFileExtension As Long

dwReserved As Long

bff(0 a 2048) como byte

Tipo de fin

Función de declaración privada FindFirstUrlCacheGroup Lib "wininet.dll" ( _

ByVal dwFlags As Long, _

ByVal dwFilter As Long, _

ByRef lpSearchCondition mientras ByVal dwSearchCondition mientras, _

ByVal dwSearchCondition mientras, _

ByRef lpGroupId como fecha, _

ByRef lpReserved As Long) As Long

Función de declaración privada DeleteUrlCacheGroup Lib "wininet.dll" (_

ByVal sGroupID como fecha, _

ByVal dwFlags Mientras, _

ByRef lpReserved As Long) Mientras

Función de declaración privada FindNextUrlCacheGroup Lib "wininet.dll" ( _

ByVal hFind As Long, _

ByRef lpGroupId As Date, _

ByRef lpReserved As Long) As Long

Función de declaración privada FindFirstUrlCacheEntry Lib Alias ​​"wininet.dll" "FindFirstUrlCacheEntryA" ( _

ByVal lpszUrlSearchPattern As String, _

ByRef lpFirstCacheEntryInfo As INTERNET_CACHE_ENTRY_INFO, _

ByRef lpdwFirstCacheEntryInfoBufferSize As Long) As Long

Función de declaración privada DeleteUrlCacheEntry Lib "wininet.dll" Alias ​​​​"DeleteUrlCacheEntryA" (_

ByVal lpszUrlName As Long) Siempre

Función de declaración privada FindNextUrlCacheEntry Lib "wininet.dll " Alias ​​"FindNextUrlCacheEntryA" ( _

ByVal hEnumHandle As Long, _

ByRef lpNextCacheEntryInfo As INTERNET_CACHE_ENTRY_INFO, _

ByRef lpdwNextCacheEntryInfoBufferSize As Long) As Long

Private Sub DelCache(vUrlSearchPattern As String, opcional vExcluded As Long = 0)

Dim sGroupID As Date

Dim hGroup As Long

Dim hFile Mientras

Atenuar sEntryInfo como INTERNET_CACHE_ENTRY_INFO

Atenuar iSize mientras

Continúe con el siguiente paso si ocurre un error

hGroup = FindFirstUrlCacheGroup (0, 0, 0, 0, 0,

sGroupID, 0)

If Err.LastDllError

Salir Sub

De lo contrario

Err.Clear

Fin If

End If

iSize = BUFFERSIZE

If (0 = FindNextUrlCacheGroup(hGroup, sGroupID, iSize)) And (Err.LastDllError lt;gt; 2 ) Luego

Debug.Print "¡Error al encontrar el siguiente grupo de caché de URL! amp; Err.LastDllError

Finalizar si

Bucle hasta Err.LastDllError = 2 p>

Fin si

sEntryInfo.dwStructSize = 80

iSize = BUFFERSIZE

hFile = FindFirstUrlCacheEntry(vUrlSearchPattern, sEntryInfo, iSize)

Si (hFile = 0) Entonces

Si (Err.LastDllError = ERROR_NO_MORE_ITEMS) Entonces

Salir de Sub

Finalizar si

Debug.Print "ERROR: FindFirstUrlCacheEntry - " amp Err.LastDllError

Salir de Sub

Finalizar si

Hacer

DoEvents

If (sEntryInfo.CacheEntryType And vExcluded) = 0 Then

If (0 = DeleteUrlCacheEntry( sEntryInfo.lpszSourceUrlName)) _

And (Err.LastDllError lt; gt; 2) Entonces

Err.Clear

Finalizar si

Finalizar si

iSize = BUFFERSIZE

If (0 = FindNextUrlCacheEntry(hFile, sEntryInfo, iSize)) And (Err.LastDllError lt;gt; ERROR_NO_MORE_ITEMS) Then

Debug.Print "Error: No se puede encontrar la siguiente entrada de caché - " amp ; Err .LastDllError

Salir del sub

Finalizar si

Bucle hasta Err.LastDllError = ERROR_NO_MORE_ITEMS

Fin del sub

Private Sub Command1_Click()

DelCache "*.*"

End Sub

Se puede utilizar en la tabla

Escriba este código en una sola página para encontrar la ubicación del archivo llamando a una función API, recorra todas las carpetas en la carpeta de caché y luego use la función API para eliminar el archivo de caché.

Por cierto, me gustaría quejarme de que tus deberes son un poco inusuales.