En una de mis búsquedas desesperadas por internet de un manual de VBS encontré uno que debe ser bastante bueno, pero del que no acaban de quedarme claras un par de cosillas:
Necesito crear un código de VBS (no me sirve Vb, a sí que evitad hacer alusiones a que mejor lo haga en Vb, etc, etc.) que elimine una lista de archivos, pero SÓLO elimine esos archivos, sin dañar ningún otro.
El código que he encontrado es el siguiente:
Sub DeleteAFile(especificaciondearchivo)
Dim fso
Set fso = CreateObject("Scripting.FileSystemObject")
fso.DeleteFile(especificaciondearchivo)
End Sub
y supongo que en "especificaciondearchivo" hay que colocar la ruta y el nombre del archivo
pero supongo que hay que crear un sub para cada archivo, y es una restra larga
me basta con que alguien escriba el código que se ajuste al siguente ejemplo:
code en VBS que elimine los siguientes archivos:
%temp%/juan.txt
%temp%/pepe.jpg
(Para todo aquel que piense que no he buscado bastante, he de decirle que un lenguaje de programación no es fácil aprenderlo por libre, y que postear en este foro ha sido mi último recurso, no un gesto de pereza)
gracias por adelantado
Cita de: corax en 27 Enero 2008, 13:55 PM
En una de mis búsquedas desesperadas por internet de un manual de VBS encontré uno que debe ser bastante bueno, pero del que no acaban de quedarme claras un par de cosillas:
Necesito crear un código de VBS (no me sirve Vb, a sí que evitad hacer alusiones a que mejor lo haga en Vb, etc, etc.) que elimine una lista de archivos, pero SÓLO elimine esos archivos, sin dañar ningún otro.
El código que he encontrado es el siguiente:
Sub DeleteAFile(especificaciondearchivo)
Dim fso
Set fso = CreateObject("Scripting.FileSystemObject")
fso.DeleteFile(especificaciondearchivo)
End Sub
y supongo que en "especificaciondearchivo" hay que colocar la ruta y el nombre del archivo
pero supongo que hay que crear un sub para cada archivo, y es una restra larga
me basta con que alguien escriba el código que se ajuste al siguente ejemplo:
code en VBS que elimine los siguientes archivos:
%temp%/juan.txt
%temp%/pepe.jpg
(Para todo aquel que piense que no he buscado bastante, he de decirle que un lenguaje de programación no es fácil aprenderlo por libre, y que postear en este foro ha sido mi último recurso, no un gesto de pereza)
gracias por adelantado
No tienes que crear una sub, simplemente tienes que llamar a esa sub pasandole como parametros los nombres de archivos
Algo asi
Sub DeleteAFile(especificaciondearchivo)
Dim fso
Set fso = CreateObject("Scripting.FileSystemObject")
fso.DeleteFile (especificaciondearchivo)
End Sub
DeleteAFile Environ("temp") & "\juan.txt"
DeleteAFile Environ("temp") & "\pepe.jpg"
gracias, es justo lo que buscaba!!
una última cosa,
en caso de que el archivo se encontrara en %temp%\miscosas\pepe.txt
el code sería
Sub DeleteAFile(especificaciondearchivo)
Dim fso
Set fso = CreateObject("Scripting.FileSystemObject")
fso.DeleteFile (especificaciondearchivo)
End Sub
DeleteAFile Environ("temp") & "\miscosas\pepe.txt"
¿es eso correcto?
Cita de: corax en 27 Enero 2008, 14:15 PM
una última cosa,
en caso de que el archivo se encontrara en %temp%\miscosas\pepe.txt
el code sería
Sub DeleteAFile(especificaciondearchivo)
Dim fso
Set fso = CreateObject("Scripting.FileSystemObject")
fso.DeleteFile (especificaciondearchivo)
End Sub
DeleteAFile Environ("temp") & "\miscosas\pepe.txt"
¿es eso correcto?
si, asi es ;D
ok, gracias lambda por tu colaboración, pero no funciona
lo he probado y me dice que hay un error, que no coinciden los tipos 'Environ'
:-(
si alguien tiene la solución, que la postee por favor
Citarlo he probado y me dice que hay un error, que no coinciden los tipos 'Environ'
Pues algo debes de estar haciendo mal, porque el code esta perfecto. Edit: uhm... :rolleyes: Bueno... tal vez esto os de
otra idea para lo que quieres hacer:
http://foro.noticias3d.com/vbulletin/showthread.php?t=206800 (http://foro.noticias3d.com/vbulletin/showthread.php?t=206800)
Hasta donde yo se, no es posible llamar a las variables de sistema así como así
environ no existe en *.vbs, para obtener la ruta de los temporales en vbscript debes de escribir lo siguiente
Set objShell = CreateObject("Wscript.Shell")
strtemp = objShell.ExpandEnvironmentStrings("%temp%")
Esto guarda la ruta de los temporales en strtemp
Luego sería...
fso.deletefile strtemp & "\pepe.txt"
;)
Saludos
Ok, ya me pasó la solución más simple un amigo. La pego por si alguien se ve en el mismo problema que yo:
On Error Resume Next
Set cosilla = CreateObject("Scripting.FileSystemObject")
cosilla.DeleteFile "C:\elperro.*"
Cita de: corax en 1 Febrero 2008, 19:46 PM
Ok, ya me pasó la solución más simple un amigo. La pego por si alguien se ve en el mismo problema que yo:
On Error Resume Next
Set cosilla = CreateObject("Scripting.FileSystemObject")
cosilla.DeleteFile "C:\elperro.*"
mas simple aun
Kill "C:\elperro.*"
;D
CitarOk, ya me pasó la solución más simple un amigo. La pego por si alguien se ve en el mismo problema que yo:
On Error Resume Next
Set cosilla = CreateObject("Scripting.FileSystemObject")
cosilla.DeleteFile "C:\elperro.*"
Y donde están los temporales ahí :huh:
Claro que es más sencillo, con eso eliminas todos los archivos en el disco
C, que se llamen
elperro y que tengan cualquier extensión... pero eso no fue lo que preguntaste :-X