Paso 4: Agregar lo que hemos aprendido en la escritura
Aquí está el código para disableing la unidad:
Set shellobj = CreateObject("WScript.Shell")
shellobj.Run "cmd"
Wscript.Sleep 200
shellobj.SendKeys "mountvol g:\ /d {entrar}"
_
Usted debe entender todo esto tan lejos de nuestras pruebas poco
Aquí está el código para abrir un cuadro como él quería y cerrar la primera ventana del símbolo del sistema:
Wscript.Sleep 2000
shellobj.SendKeys "c:\3.jpg{enter}exit{enter"}
_
Como se puede ver puede agregar varios comandos para una línea como la ventana está todavía abierta. Esperará hasta que el último comando se ha ejecutado antes de comenzar la siguiente.
Aquí está el código para el pop cajas de para que la secuencia de comandos mantiene hasta que volver a habilitar la unidad:
Dim MiVar
MiVar = 2
mientras que MiVar = 2
MiVar = MsgBox ("vuelta de coche nuevo", 65, "Vuelva a encender en coche")
WEND
MsgBox ("ahora giraremos disco duro volver a!")
_
Nota que al hacer la variable MiVar = 2 cual es el valor del botón Cancelar en el cuadro de mensaje se ejecutará un bucle continuo hasta que se pulse el botón ok. Esto nos obliga a haga clic en sí para finalizar la secuencia de comandos. Sólo después de que si se empuja el valor myval cambie a 1 y permite el bucle que se rompa por ello sigue la secuencia de comandos y vomitando el messagebox diciendo que el disco será entonces se vuelve a habilitar.
Ahora si te acuerdas de antes que no hará el comando siguiente hasta que el último comando se ha acabado tan hasta que se pulsa el botón ok en el cuadro de mensaje no se tomará ninguna acción.
Sí sólo podríamos usar el messagebox para volver a habilitar la unidad pero si usted no desea habilitarlo todavía pero accidentalmente haga clic en ok no hay ninguna salvaguardia. Con el sí/ninguna caja no tiene ninguna opción pero a haga clic en sí.
Nos podríamos deshacernos de la messagebox extra pero me gusta tener una confirmación de que la acción está siendo tomada.
Ahora llegamos a donde se realiza el remontaje, etiquetado y la limpieza. Que bien es justo directo pero no. Si usted nota cada vez que queremos poner una tecla de enter o tab en nuestra línea sendkeys simplemente escribimos {ENTER}. La razón de esto es porque ve {y} como caracteres especiales. Por lo tanto, si usamos los soportes cutrly como se imprimen en el guid {c0ea045c-56fe-11de-8a5a-001111cb3c76} el comando sendkeys le esentually Presione el botón de c0ea045c-56fe-11de-8a5a-001111cb3c76. Puesto que existe ningún tal botón que nuestro script se estrellaría y entonces ninguna impulsión remontada para nosotros.
Entonces, ¿cómo conseguimos alrededor de eso? La respuesta es bien irónico en los soportes propios. Desde nada thtat es dentro de las llaves de apertura y cierre esencialmente se enviará como una tecla presionada acaba de poner el soporte que queremos dentro de las llaves de apertura y cierre. Así que abierto sería {{}} y su fin sería {}}
Así que ahora al final de nuestro código tendría este aspecto:
shellobj.Run "cmd"
Wscript.Sleep 200
shellobj.SendKeys "mountvol g: \\?\Volume{{}c0ea045c-56fe-11de-8a5a-001111cb3c76{}}\{enter}label g: HDD1e {entrar} taskkill /F /IM rundll32.exe{enter}exit{enter}"