Cita:
Iniciado por tammander
Como te he dicho antes,
MapPath sirve para averiguar el path físico desde un path relativo, con lo cual si ya tienes el path físico no necesitas usar
MapPath:
Count= Upload.Save("
c:\clients\misitio\data\carpetaconpermisos")
' Instanciamos el objeto
Set FSO = Server.CreateObject("Scripting.FileSystemObject")
' Asignamos el fichero a renombrar a la variable fich
Set Fich = FSO.GetFile("
c:\clients\misitio\data\carpetaconpermisos\" & NombreAnterior)
' llamamos a la funcion copiar,
'y duplicamos el archivo pero con otro nombre
Call Fich.Copy("
c:\clients\misitio\data\carpetaconpermisos\" & NombreNuevo)
' finalmente borramos el fichero original
En caso de que no supieras donde esta dicho path, si usaria
MapPath. Por ejemplo, imagina que ese código esta en un script que cuelga de
c:\clients\misitio\ entonces si usaria
MapPath:
dirData = Server.MapPath("data/carpetaconpermisos")
Count= Upload.Save(dirData)
' Instanciamos el objeto
Set FSO = Server.CreateObject("Scripting.FileSystemObject")
' Asignamos el fichero a renombrar a la variable fich
Set Fich = FSO.GetFile(dirData & "\" & NombreAnterior)
' llamamos a la funcion copiar,
'y duplicamos el archivo pero con otro nombre
Call Fich.Copy(dirData & "\" & NombreNuevo)
' finalmente borramos el fichero original
¿Ves la diferencia entre las dos barras invertidas? Una es típicamente de la web (hacia adelante). Es una dirección relativa. La otra (hacia atras) es la típica de Windows/MSDOS y es una dirección absoluta o física (como más rabia te dé decirlo

)
Un saludo
Holas de nuevo tammander, eh visto lo que me estas brindando y me a tirado otro error, perdona mi ignoracia si sigo haciendo algo mal:
viendo lo que me decis modifique:
<%
Set Upload = Server.CreateObject("Persits.Upload.1")
Count= Upload.Save("
c:/clients/misitio/data")
%>
<% = Count %> ficheros subidos.
<%
Dim FSO, Fich , NombreAnterior, NombreNuevo
'Inicialización
NombreAnterior = imagen
NombreNuevo ="Nuevo.jpg"
' Instanciamos el objeto
Set FSO = Server.CreateObject("Scripting.FileSystemObject")
' Asignamos el fichero a renombrar a la variable fich
Set Fich = FSO.GetFile(Server.MapPath("
misitio/data" & "\" & NombreAnterior))
' llamamos a la funcion copiar,
'y duplicamos el archivo pero con otro nombre
Call Fich.Copy(Server.MapPath("
misitio/datadata" & "\" & NombreNuevo))
' finalmente borramos el fichero original
Call Fich.Delete()
y error es el siguiente:
1 ficheros subidos.
Microsoft VBScript runtime error '800a0035'
File not found
/without_flash/Upload_new.asp, line 27
line 27 del maldito error: Set Fich = FSO.GetFile(Server.MapPath("
misitio/data" & "\" & NombreAnterior)).