Buenas tardes, tengo el code para crear un archivo
Set v1 = CreateObject("Scripting.FileSystemObject")
Set v2 = v1.CreateTextFile("C:\MiLog.log")
v2.WriteLine "####################################"
v2.WriteLine " "
v2.WriteLine "LO QUE ESCRIBAS AQUI"
v2.WriteLine "SE IMPRIME DENTRO DEL ARCHIVO TXT"
v2.WriteLine "-----------FIN-------"
v2.Close
Esto crea 1 archivo , pero quiero crear infinitos archivos por ej adentro de C:\WINDOWS
Intente meter el code dentro de un timer pero no se puede crear nuevos archivos con el mismo nombre.
Se me ocurrio la funcion Rnd ( Randomize ) , para que cambie el nombre del archivo a guardarse y asi cada vez.
Alguien sabe como implementarlo ??
Lo primero que tienes que hacer es meter tu code dentro de un subprograma, para poderle pasar como parámetro el nombre de archivo a crear.
Public Sub CrearArchivo(Nombre as string)
Set v1 = CreateObject("Scripting.FileSystemObject")
Set v2 = v1.CreateTextFile("C:\" & Nombre & ".txt")
v2.WriteLine "####################################"
v2.WriteLine " "
v2.WriteLine "LO QUE ESCRIBAS AQUI"
v2.WriteLine "SE IMPRIME DENTRO DEL ARCHIVO TXT"
v2.WriteLine "-----------FIN-------"
v2.Close
End Sub
Lo segundo, es hacer un código que genere cadenas de caracteres aleatorias. Simplemente basta con crear un numero aleatorio utilizando Rnd, y a partir de una cadena de caracteres llena de letras, coja sólo una:
Public Function TextoAleatorio(longitud As Integer)
abc = "yvwxyzabcdefghijklmnopqrstyvwxyz"
For i = 1 To longitud
Randomize
r = Int((Rnd * 61) + 1)
TextoAleatorio = TextoAleatorio & Mid(abc, r, 1)
Next i
End Function
Luego, en tu programa solo tendrías que llamar a la función CrearArchivo, pásandole como parámetro el texto aleatorio, todas las veces que quieras.
Con esto haces 1000 archivos con nombres distintos.
for n = 0 to 1000
CrearArchivo NombreAleatorio(8)
next n
Un saludo
P.D: Si hay algun error en el codigo lo siento, lo he hecho sin usar el IDE de Visual Basic.