Muchos sitios web de tonos de llamada para teléfonos móviles tienen su propio programa anti-sanguijuelas, pero este programa sólo está diseñado para prevenir a los caballeros, no a los ladrones. Introduzcamos brevemente la función: se utiliza un objeto ASP ServerVariables (variable de entorno del servidor). A través de esta variable de entorno, se puede obtener la dirección de descarga real y luego se puede destruir la integridad de la dirección real mediante algunas funciones integradas de VBS simples. Logre la función de engañar al descargar software. El código fuente ahora está adjunto para que todos puedan aprenderlo.
Copie el código de código de la siguiente manera:
<% Función Descargar archivo (StrFIle)
StrFIlename=StrFIlename
Respuesta.Buffer=Verdadero
Respuesta.Borrar
Establecer S=Servidor.CreateObJect(ADODB.Stream)
S.abierto
Tipo S=1
en Error Reanudar Siguiente
Establecer Fso=Server.CreateObJect(ScrIptIng.FIleSystemObJect)
Si no es Fso.FIleExists (StrFIleName) entonces
From_Url=Cstr(Request.ServerVarIables(HTTP_REFERER))
Serv_Url=Cstr(Request.ServerVarIables(SERVIDOR_NOMBRE))
Si MId(From_Url,8,len(Serv_Url)) <> Serv_Url Entonces
Response.WrIte El archivo no existe o ha sido eliminado.
Respuesta.Fin
Terminar si
Respuesta.Solicitud RedIrect.ServerVarIables(HTTP_REFERER)
Respuesta.Fin
Terminar si
FileExt=MId(StrFIlename,InStrRev(StrFIleName, .)+1)
Seleccione Caso UCase (FIleExt)
Caso ASP, ASA, ASPX, ASAX, MDB, PHP, JSP, SHTML, HTML, HTM, TV, DATOS
From_Url=Cstr(Request.ServerVarIables(HTTP_REFERER))
Serv_Url=Cstr(Request.ServerVarIables(SERVIDOR_NOMBRE))
Si MId(From_Url,8,len(Serv_Url)) <> Serv_Url Entonces
Response.WrIte El archivo no existe o ha sido eliminado.
Respuesta.Fin
Terminar si
Respuesta.Solicitud RedIrect.ServerVarIables(HTTP_REFERER)
Respuesta.Fin
Seleccionar fin
Establecer F=Fso.GetFIle(StrFIlename)
IntFIlelength=F.SIze
s.LoadFromFIle(StrFIlename)
Si se equivoca entonces
From_Url=Cstr(Request.ServerVarIables(HTTP_REFERER))
Serv_Url=Cstr(Request.ServerVarIables(SERVIDOR_NOMBRE))
Si MId(From_Url,8,len(Serv_Url)) <> Serv_Url Entonces
Response.WrIte Los datos del archivo están incompletos o dañados.
Respuesta.Fin
Terminar si
Respuesta.Solicitud RedIrect.ServerVarIables(HTTP_REFERER)
Respuesta.Fin
Terminar si
Establecer carga = Server.CreateObJect (PersIts.Upload)
Si la carga no es nada, entonces
Response.AddHeader Content-DIsposItIon, archivo adjunto = &F.Name
Response.AddHeader Contenido-Longitud, IntFilelength
Respuesta.CharSet=UTF-8
Response.ContentType=aplicación/x-descarga
Respuesta.BinaryWrite S.Read
Respuesta.Flush
S.Cerrar
Establecer s=Nada
Demás
Cargar.EnviarBinary StrFIlename,True,aplicación/x-descarga,False
Terminar si
Función final
%>
Uso: <%Llamar a DownloadFIle(DownloadFIle)%>.