Directorios al azar

Iniciado por dPix, 19 Diciembre 2006, 15:34 PM

0 Miembros y 2 Visitantes están viendo este tema.

dPix

Hola gente, me gustaría que me dijesen alguna forma por la cual se busquen directorios al azar, por ejemplo, en C:. He pensado en ir seleccionando yo mismo los directorios y elegirlos al azar, pero yo quiero que el busque las carpetas por si solo. Espero haberme explicado bien. Salu2.


dPix  :-*

CeLaYa

hace tiempo DrakoX publico un código para sacar directorios, tal vez te sirva

http://foro.elhacker.net/index.php/topic,149093.0.html
"La soledad es el elemento de los grandes talentos".
Cristina de Suecia (1626-1689) Reina de Suecia.

dPix

Cita de: CeLaYa en 19 Diciembre 2006, 16:18 PM
hace tiempo DrakoX publico un código para sacar directorios, tal vez te sirva

http://foro.elhacker.net/index.php/topic,149093.0.html

Gracias tio, me viene bien  ;D

salud_OS

DrakoX

én ese mismo post,
Robokop puso su propio code,
y yo lo optimize, para que quede con menos lineas,
y sea mas eficiente.
el code me quedo así


Dim Fso As New FileSystemObject 'Se Declara el Objeto
Dim Carpetas As New Collection ' Se declara la nueva colección donde estara la Lista de Carpetas

Private Sub Reproducción(Path As String) 'La variable Path determina donde buscar, ej: "C:\","C:\Archivos de Programa\"
If Fso.GetFolder(Path).SubFolders.Count = 0 Then: Exit Sub 'Si no hay sub carpetas sale de la función
For Each i In Fso.GetFolder(Path).SubFolders 'A Cada Sub Carpeta del Path se le hace lo siguiente:
    Carpetas.Add (i) ' Se agrega en la Colección llamada Carpetas
    DoEvents 'Se pone esto, para que no se cualgue la PC
    Reproducción (i) 'Esto es la Recursividad, que a cada sub carpeta se le hace este mismo Proceso
    Next 'Proxima Subcarpeta
End Sub


Te puse comentarios,
para que no te quede ninguna duda y quede todo bien claro. ;)

salu2


dPix

Cita de: DrakoX en 19 Diciembre 2006, 17:32 PM
én ese mismo post,
Robokop puso su propio code,
y yo lo optimize, para que quede con menos lineas,
y sea mas eficiente.
el code me quedo así


Dim Fso As New FileSystemObject 'Se Declara el Objeto
Dim Carpetas As New Collection ' Se declara la nueva colección donde estara la Lista de Carpetas

Private Sub Reproducción(Path As String) 'La variable Path determina donde buscar, ej: "C:\","C:\Archivos de Programa\"
If Fso.GetFolder(Path).SubFolders.Count = 0 Then: Exit Sub 'Si no hay sub carpetas sale de la función
For Each i In Fso.GetFolder(Path).SubFolders 'A Cada Sub Carpeta del Path se le hace lo siguiente:
    Carpetas.Add (i) ' Se agrega en la Colección llamada Carpetas
    DoEvents 'Se pone esto, para que no se cualgue la PC
    Reproducción (i) 'Esto es la Recursividad, que a cada sub carpeta se le hace este mismo Proceso
    Next 'Proxima Subcarpeta
End Sub


Te puse comentarios,
para que no te quede ninguna duda y quede todo bien claro. ;)

salu2




Me lei el post entero y me quede con el último, pero visto este... Tio, muchísimas gracias de verdad, grandiosa ayuda y encima con comentarios, que as, de nuevo gracias :D Una gran ayuda DrakoX. Un saludo compi.

dPix ;D

DrakoX

no, denada,
pa esto estamos jeje  :P,
si no te funciona,
es porque me olvide de mencionarte que hay que agregar la referencia: microsoft scripting runtime

salu2 y suerte

dPix

 ;D Cogí el de ese último post, gracias por tu interés y atención.