Ver Mensaje Individual
  #13 (permalink)  
Antiguo 12/03/2007, 10:13
jonathan.m.a
 
Fecha de Ingreso: febrero-2007
Mensajes: 35
Antigüedad: 18 años, 3 meses
Puntos: 0
Re: Confusion para Upload simultaneo

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
Código:
@regsvr32 axasputils.dll
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,