Seleccionar unidad y ejecutar comando

Iniciado por Dany3j, 29 Junio 2011, 03:29 AM

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

SuperDraco

Cita de: erickvcr en 14 Julio 2011, 18:05 PM
Muchisimas gracias compañero lo pondre en marcha en las compus :D ... Thxs

de nada pero lo he modificado, no me di cuenta de que le cambiaste las variables al for xD
No he vuelto, solo estoy de paso.

erickvcr

Jejejeje si es que no tiene mucho caso el dejar la B y la C, mejor nos vamos directamente a lo util jejejeje, una duda, el hecho de que la llamada a Inicio no este dentro de Verificar, aun asi hara el bucle?
----------------------------------------------------------

SuperDraco

Cita de: erickvcr en 14 Julio 2011, 18:10 PM
Jejejeje si es que no tiene mucho caso el dejar la B y la C, mejor nos vamos directamente a lo util jejejeje

Como quieras, yo lo dejaría como está, si empiezas por la variable %%D esarás omitiendo las 2 primeras unidades, y entonces tienes que aumentar los tokens a 11.  (1-11)

si las compus tienen disqueteras, la variable %%B corresponderá a la unidad A: por que es la primera alfabéticamente, y las demás variables según la letra de unidad que tengan asignadas el resto de dispositivos...

en mi PC es:

%%B = C:
%%C = D:
%%D = J:


No se si me he explicado bien... xD, al empezar por la variable %%D, tepuedes haber saltado unidades que sean pendrives.


Cita de: erickvcr en 14 Julio 2011, 18:10 PM
una duda, el hecho de que la llamada a Inicio no este dentro de Verificar, aun asi hara el bucle?

Si, puedes estar seguro.  :P

Si pones "goto:inicio" dentro de verificar, consigues otro tipo de bucle, lo que vas a conseguir es que solo se compruebe la primera unidad seteada (%%b), una y otra vez, y el resto de unidades no se comprobarán.

No he vuelto, solo estoy de paso.

erickvcr

uhmmmmm no lo habia pensado ... muchas gracias compañero, seguire tus sugerencias, me habia confundido ya que a veces en mi compu pongo hasta 4 usbs y llego por ahi de la letra L o pensando que en otra compu tengo unidades virtuales, pero mejor lo dejo como tu me dices :D

Por que el que sabe ... sabe ... y el que no ... le pregunta al hacker xD jajajaj hasta rimo
----------------------------------------------------------

SuperDraco

es que me parece que te has confundido  :xD

%%B no significa unidad B:

%%B significa la primera unidad por orden alfabético de la PC.

Así que con el code original, comprueba las primera nueve unidades de tu pc, pero bueno, si no lo ves suficiente, solo añade lineas al for siguiendo el orden alfabético de la variable, y aumentando los tokens por cada variable q hagas, y ya.

9 variables = tokens=1-9*

15 variables = toneks=1-15*


ahora si, saludossss
No he vuelto, solo estoy de paso.

erickvcr

houston ... we've a problem xD

Y en el caso del win 7 en el que se necesitan privilegios de administrador para el uso de "fsutil fsinfo drivetype", como podriamos solucionar eso para no estar dandole "SI" a esa ventanita latosa?
----------------------------------------------------------

SuperDraco

Cita de: erickvcr en 14 Julio 2011, 19:09 PM
se necesitan privilegios de administrador para el uso de "fsutil fsinfo drivetype", como podriamos solucionar eso

prueba así, añade estas líneas entre la de setlocal e :inicio

takeown /F "%Windir%\System32\fsutil.exe" >nul 2>&1
icacls "%Windir%\System32\fsutil.exe" /grant Administradores:(D,WDAC,MA,F) >nul 2>&1


Utilizas una vez el script con esas nuevas líneas, luego cierra sesión por si acaso, vuelves a abrir, y vuelves a utilizar el code, entonces debería funcionar  :xD.
No he vuelto, solo estoy de paso.

erickvcr

lo checare y luego te informo que paso ... MIL GRACIAS!
----------------------------------------------------------

saul_moises

Necesito su ayuda, buscando por la net, encontré este trabajo que justo es lo que necesitaba. Lo compile con el Quick Batch File Compiler y solo me detecta la unidad C...  pero si funciona bastante bien la ejecución del attrib y la eliminación del autorun, me gustaría que funcionara lo de las unidades ya que el programa seria para profesores con poco dominio de computación.

Atento a sus aporte y en especial a PITOLOKO

gracias

leogtz

pitoloko,  solo tendrías que cambiar la técnica de detección de unidades, el dir es efectivo porque es un comando interno del cmd, por lo tanto tiene permisos, de los demás no sabemos ..., así que podrías adaptarlo para esta tarea, yo te ayudo si hay problemas.
Código (perl) [Seleccionar]

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

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