Archivo: 'uptest.asp'
Código:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252" LCID="1034"%><% 'uptest.asp
Dim inicio_carga: inicio_carga = Timer 'Contar el tiempo de carga de la web.
%><!--#include file="xelupload.asp"--><%
'Dependiendo el tamaño se puede aumentar
Server.ScriptTimeout = 6000
Dim up, fich
Set up = new xelUpload
up.Upload()
Response.Write("<html><head></head><body>")
Response.Write("Número de ficheros subidos: " & up.Ficheros.Count & "<br>")
Response.Flush
For each fich in up.Ficheros.Items
Response.Write("<ul>")
If up.IsLoadAspFunc() Then Response.Write("<li>Clase AspFunctions v1.0 cargada.</li>" + "<br>" + "<br>")
Response.Write("<li>Nombre: <b>" & fich.Nombre & "</b></li>")
Response.Write("<li>Tamaño: <b>" & fich.Tamano & "</b> bytes (" & FormatNumber(fich.Tamano / (1024*1024)) & " Mb)</li>")
Response.Write("<li>Tipo MIME: <b>" & fich.TipoContenido & "</b></li>")
Response.Write("</ul>")
'Para guardarlo
' Con el nombre de fichero original:
'fich.Guardar Server.MapPath("rutavirtual")
' Con otro nombre:
fich.GuardarComo fich.Nombre, "C:\"
'----------------------------------------------------------------
Next
'Limpiamos objeto
set up = nothing %>
Powered by <b>xelUpload</b> ;-)<br>
<b>AspFunctions</b> By Jonathan M.A<br>
Pagina generada en <%=FormatNumber(Timer - inicio_carga, 4, True)%> segundos.
</body>
</html>
Ahora van los archivos relacionados con la dll.
Necesitaras el vb6.
Nombre del proyecto: axAspUtils
Nombre de la clase: clsAspFunctions
Opciones de compilación:
Ejecución desantendida (No muestra los errores)
Subprocesos independientes
Clase: 'clsAspFunctions.cls'
Propiedades: Instancing = 5; Persistable = 0
Código:
' Módulo: clsAspFunctions.asp v1.0.2007.03.12
Option Explicit
Public Function AsciiToUnicode(ByRef sCadena As String) As String
AsciiToUnicode = StrConv(sCadena, vbFromUnicode)
End Function
Public Function UnicodeToAscii(ByRef sCadena As String) As String
UnicodeToAscii = StrConv(sCadena, vbUnicode)
End Function
Puedes registrar la dll cuando la compilas con el vb, pero para hacerlo manual:
Install.bat
uninstall.bat
Código:
@regsvr32 axasputils.dll /u
Y un script para probar que la dll esta correctamente instalada:
Archivo: 'test_axasputils.vbs'
Código:
Dim oAspFunc, sData
On Error Resume Next
Set oAspFunc = CreateObject("axasputils.clsAspFunctions")
If Err.Number <> 0 Then
Msgbox "Error, es posible que la libreria no este correctamente instalada." + vbcrlf + "Codigo error: " + CStr(Err.Number) + vbcrlf + "Descripción: " + Err.Description, vbInformation, "Test axAspUtils.clsAspFunctions.AsciiToUnicode"
Else
sData = oAspFunc.AsciiToUnicode("Hola")
sData = oAspFunc.UnicodeToAscii(CStr(sData))
MsgBox sData, vbinformation, "Test axAspUtils.clsAspFunctions.AsciiToUnicode"
Set oAspFunc = Nothing
End If
Bien, con esto ya lo tienes todo, ahora haz las pruebas de velocidad y veras la diferencia.
Aunque ahora sea más rapido continua siendo inadecuado para archivos grandes (16 Mb), solo ha ganado velocidad, nada más.
La clase xelupload ha sido preparada para operar sin el componente axAspUpload, esto es que si se dañara, borrara, etc continuaria utilizando las funciones originales, volviendo a comportarse como la 1.0
Cualquier duda ya sabes,