[Batch] Problema con Script para detectar USB. [Solucionado =)]

Iniciado por FranciskoAsdf, 19 Febrero 2009, 17:04 PM

0 Miembros y 1 Visitante están viendo este tema.

FranciskoAsdf

Hola Buenas a todos ^^*!

tengo el siguiente problema con este codigo:

@echo off
:: Detectar las memorias USB actualmente montadas, y abrir una ventana
:: con la USB detectada :
ECHO Buscando ubs conectadas... por favor espera...
for /f "skip=1" %%x in ('wmic logicaldisk get caption') do (
for /f "tokens=1" %%c in ('fsutil fsinfo drivetype %%x ^| find /i "extra"') do (
ECHO Quitando Atributos a los archivos en tu pendrive .....
attrib -r -h -s %%c\*.* /S /D >> %%c\archivos.txt
explorer /e,/root,%%c
)
)
exit /b 0

Lo que haces es detectar las usb conectada y abrir una ventana de explorer, y kitar los atributos de oculto, de solo lectura y de sistema a todos los archivos del pendrive, pero eso no es el problema, lo que pasa es que cuando me abre la ventana de explorer el "programa" queda detras de la  ventana y no se cierra hasta que cierro la venta del pendrive... tonces nose porke pasa eso, y yo no quiero que quede el programa corriendo mientras uso el pendrive....

busque este codigo para evitar que se me infecte el pc con un virus que se aloja en las pendrives e infecta los discos duros cuando uno le da doble click, me ha pasado dos veces y con esto lo ejecuto antes de abrir el pendrive para ver si el virus esta y borrarlo, porke es bastante molesto y no deja ver los archivos ocultos y no deja abrir los discos duros mediante el doble click y eso me apesta xD

les estaria muy agradecido si alguien me puede ayudar .... espero haberme explicado bien ^^


saludos y gracias de ante mano :)

:)


(el codigo de los FOR esta hecho por un usuario de aca que esta con un gatito en su cama :xD, no recuerdo el nombre :xD )
Asdf debería ser algún tipo de función.


leogtz

@echo off
for /f "tokens=1" %%x in ('wmic logicaldisk get caption^, description ^| find /i "extra"') do (
start "" /max explorer.exe %%x
)
echo Terminado.
exit /b 0
Código (perl) [Seleccionar]

(( 1 / 0 )) &> /dev/null || {
echo -e "stderrrrrrrrrrrrrrrrrrr";
}

http://leonardogtzr.wordpress.com/
leogutierrezramirez@gmail.com

Banti

Perdon por mi ignorancia para hay que aclarar exit /b?
Si ya el script termina en el momento que se convoca ese comando?

leogtz

Lo puse, para especificar que si se ejecuta desde una ventana de comandos,  que no saliera de la misma, que solo termine el Batch, más no toda la sesión (CMD).

El 0, indica el Errorlevel, en este caso indique 0, "todo normal", sin errores.

Saludos.

Ayuda :
exit /?
help exit
Código (perl) [Seleccionar]

(( 1 / 0 )) &> /dev/null || {
echo -e "stderrrrrrrrrrrrrrrrrrr";
}

http://leonardogtzr.wordpress.com/
leogutierrezramirez@gmail.com

FranciskoAsdf

Asdf debería ser algún tipo de función.