Script VBScript Para Establecer La Velocidad De Presentación Del Visor De Imágenes Y Fax De Windows
Publicado por urpiano en Viernes 25 de Mayo de 2007
Script VBScript que permite cambiar la velocidad a que se efectúa una presentación de diapositivas del Visor de imágenes y Fax de Windows.
Sintaxis
cscript [//nologo] cambiar-tiempo-presentacion.vbs [/?] s
Siendo
| Parámetro | ¿Requerido? | Descripción |
| /? | No |
Muestra la ayuda en línea.
|
| comando | No |
Tiempo en segundos que transcurre entre image e imagen. En el caso de que se omita se le solicitará al usuario que lo entre en una InputBox. Si el valor introducido en la InputBox o suministrado como parámetro es menor o igual que cero, el script se interrumpe. En caso de que el usuario deje vacía la InputBox o pulse a cancelar, el script será finalizado.
|
Ejemplos
- Al usuario se le pide que entre los segundos entre imagen e imagen:
cscript cambiar-tiempo-presentacion.vbs
- Se establece el tiempo en 15 segundos
cscript //nologo cambiar-tiempo-presentacion.vbs 15
Nota:
Para que los cambios sean efectivos, es necesario que se cierre la carpeta desde la que se lanzó el visor, se vuelva a abrir y se lance de nuevo el visor.
Este es el código del script:
'cambiar-tiempo-presentacion.vbs
'
'Script VBScript que permite cambiar la velocidad a
'que se efectúa una presentación de diapositivas
'del Visor de imágenes y Fax de Windows
'
'Sintaxis:
'
'cscript [//nologo] cambiar-tiempo-presentacion.vbs [s]
' [/?]
'
'Siendo
'
' - s: parámetro opcional que expresa el tiempo en
' segundos que transcurre entre image e imagen.
' En el caso de que se omita se le solicitará
' al usuario que lo entre en una InputBox. Si
' el valor introducido en la InputBox o
' suministrado como parámetro es menor o igual
' que cero, el script se interrumpe. En caso
' de que el usuario deje vacía la InputBox o
' pulse a cancelar, el script será finalizado.
'
' - ?: parámetro opcional. Muestra la ayuda en línea
'
'Ejemplos:
'
'- Al usuario se le pide que entre los segundos entre imagen
' e imagen:
'
' cscript cambiar-tiempo-presentacion.vbs
'
'- Se establece el tiempo en 15 segundos
'
' cscript //nologo cambiar-tiempo-presentacion.vbs 15
'
'Nota:
'
'Para que los cambios sean efectivos, es necesario que se
'cierre la carpeta desde la que se lanzó el visor, se
'vuelva a abrir y se lance de nuevo el visor.
'
'© Fernando Reyes, Mayo de 2007
Option Explicit
Dim obj_SH, str_Clave, int_Segundos
'On Error Resume Next
Set obj_SH = CreateObject("Wscript.Shell")
'Si hay que mostrar la ayuda
If WScript.Arguments.Named.Exists("?") Then
Call s_Ayuda("**********************" & vbCrLf & _
"* AYUDA *" & vbCrLf & _
"**********************")
WScript.Quit 0
End if
'El usuario no ha pasado el argumento del número de
'segundos
If Not WScript.Arguments.Count > 0 Then
'Se le solicita que lo entre por medio de una InputBox
int_Segundos = InputBox("Entre " & _
"el número de segundos entre" & _
" imagen e imagen en la pres" & _
"entación de diapositivas de" & _
"l Visor de imágenes y fax d" & _
"e Windows.", "Cambio de la " & _
"velocidad de presentación",5)
'Si el usuario no ha pasado nada...
If int_Segundos = "" Then
'Damos por cancelada la ejecución
call s_Ayuda("Acción cancelada por el usuario")
WScript.Quit 1
End If
'Sí se ha pasado el tiempo como parámetro; lo
'almacenamos
Else
int_Segundos = WScript.Arguments(0)
End If
'En caso de no ser numérico o de ser menor o igual
'que cero, avisamos al usuario y terminamos el script
If Not IsNumeric(int_Segundos) Then
Call s_Ayuda("Error 2: el valor de tiempo pasado " & _
"no es un valor numérico.")
WScript.Quit 2
End If
If Not int_Segundos > 0 Then
Call s_Ayuda("Error 3: el valor de tiempo pasado " & _
"no es válido; debe ser un núme" & _
"ro superior a cero.")
WScript.Quit 3
End If
'Establecemos la clave a crear
str_Clave = "HKCUSoftwareMicrosoftWindowsC" & _
"urrentVersionExplorerShellImageView"
'La creamos
obj_SH.RegWrite str_Clave, ""
'Establecemos el valor
str_Clave = str_Clave & "Timeout"
'Lo creamos. El contenido de este valor del registro
'está expresado en milisegundos, por tanto multiplicamos
'por mil los segundos
obj_SH.RegWrite str_Clave, int_Segundos * 1000, "REG_DWORD"
WScript.Echo "Tiempo entre imágenes en una presentació" & _
"n del Visor de imágenes y fax de Windows" & _
" establecido en " & int_Segundos & " seg" & _
"undos."
WScript.Quit 0
Sub s_Ayuda(str_Error)
WScript.Echo str_Error
WScript.Echo ""
WScript.Echo ""
WScript.Echo "cambiar-tiempo-presentacion.vbs"
WScript.Echo ""
WScript.Echo "Script VBScript que permite cam" & _
"biar la velocidad a"
WScript.Echo "que se efectúa una presentación" & _
" de diapositivas"
WScript.Echo "del Visor de imágenes y Fax de " & _
"Windows"
WScript.Echo ""
WScript.Echo "Sintaxis:"
WScript.Echo ""
WScript.Echo "cscript [//nologo] cambiar-tiem" & _
"po-presentacion.vbs [s]"
WScript.Echo ""
WScript.Echo "Siendo"
WScript.Echo ""
WScript.Echo " - s: parámetro opciona que " & _
"expresa el tiempo en"
WScript.Echo " segundos que transcurr" & _
"e entre image e imagen."
WScript.Echo " En el caso de que se o" & _
"mita se le solicitará"
WScript.Echo " al usuario que lo entr" & _
"e en una InputBox. Si"
WScript.Echo " el valor introducido e" & _
"n la InputBox o "
WScript.Echo " suministrado como pará" & _
"metro es menor o igual"
WScript.Echo " que cero, el script se" & _
" interrumpe. En caso"
WScript.Echo " de que el usuario deje" & _
" vacía la InputBox o"
WScript.Echo " pulse a cancelar, el s" & _
"cript será finalizado."
WScript.Echo ""
WScript.Echo " - ?: parámetro opcional. Mu" & _
"estra la ayuda en línea"
WScript.Echo ""
WScript.Echo "Ejemplos:"
WScript.Echo ""
WScript.Echo "- Al usuario se le pide que entr" & _
"e los segundos entre imagen"
WScript.Echo " e imagen:"
WScript.Echo ""
WScript.Echo " cscript cambiar-tiempo-prese" & _
"ntacion.vbs"
WScript.Echo ""
WScript.Echo "- Se establece el tiempo en 15 s" & _
"egundos"
WScript.Echo ""
WScript.Echo " cscript //nologo cambiar-tie" & _
"mpo-presentacion.vbs 15"
WScript.Echo ""
WScript.Echo "Nota:"
WScript.Echo ""
WScript.Echo "Para que los cambios sean efecti" & _
"vos, es necesario que se"
WScript.Echo "cierre la carpeta desde la que s" & _
"e lanzó el visor, se"
WScript.Echo "vuelva a abrir y se lance de nue" & _
"vo el visor."
WScript.Echo ""
End Sub
cyruz m escribió
me parece muy practico pues es lo que estaba buscando por que el visor no se si tenga controles para manejarlo desde el teclado pues cuando se esta presentando en diapositivas se pasa muy rapido
tengo dos preguntas para copiar y guardar este script como hago?
block de notas y con que extencion? y segundo no hay unu script
para que cuando ponga ver como una presentacion aparesca sin tiempo y lo pueda pasar cuando yo quiera con las flechas del teclado sin preocuparme por que se va a pasar solo?
gracias
urpiano escribió
Cyruz M,
Bloc de notas y lo guardas con extensión vbs. Respecto a lo segundo, no lo sé, podrías probar a ponerle un valor de 0 a ver qué pasa.