Академический Документы
Профессиональный Документы
Культура Документы
Contenidos
Conceptos Introduccin a VBScript Windows Script Host Conclusiones Ejercicio Prctico comn con Directivas de grupo
Windows Script
Conceptos
Conceptos Bsicos
Computador Von Neuman
Almacenamiento (Mem. Secund)
Memoria Principal
UC
ALU
entrada
salida
Lenguaje de Programacin
Tcnica estndar de comunicacin que permite expresar las instrucciones que han de ser ejecutadas en un computador. Conjunto de reglas sintcticas y semnticas que definen un programa informtico. Permite a un programador especificar:
datos a operar, Almacenamiento y transmisin Acciones a realizar segn circunstancias
Clasificacin de Lenguajes
Lenguajes Compilados
Pascal, Ada, COBOL, Fortran, C/C++, C#,
Lenguajes Interpretados
PHP, ASP, VBScript, Python,
Compilacin
CPU solo entiende binario, tambin llamado cdigo mquina (110010110) Proceso ejecutndose en binario Programa en binario Se programa en binario? NO
compilador
Programa VS Proceso
Programa
conjunto de instrucciones que llevan a cabo una operacin en un computador Texto en un fichero
Proceso
Programa en ejecucin Se almacena en Memoria (prim. o sec.)
programa proceso
Paradigmas de Programacin
Forma de representar y manipular el conocimiento. Filosofa para la construccin del software. Cada uno tiene ventajas y desventajas. Situaciones donde un paradigma resulta ms apropiado que otro. Tipos:
Imperativo
Sentencias que cambian el estado del programa
Declarativo o Funcional
Uso de funciones matemticas y predicados formales
Esquema de un Programa
ENTRADA
ALGORITMO
SALIDA
ALGORITMO: Conjunto de operaciones que, secuencialmente, conducen a la respuesta de una pregunta, en un numero finito de pasos.
Metodologa de Programacin
Pasos en la resolucin
Anlisis del problema Realizacin de la estrategia ideada para su solucin Verificacin y anlisis del rendimiento del procedimiento.
Estrategia ideada
Estudio del algoritmo a utilizar
Casos bsicos Casos generales Casos extremos
Verificacin y validacin
Prueba con casos sencillos Prueba con casos complejos Prueba con casos extremos Estudio del rendimiento
Tiempo Uso de memoria
Posibles ejemplos
Mnimo entre dos nmeros Suma entre dos nmeros Saber si un numero es cuadrado perfecto Calcular soluciones de una ecuacion de 2 orden Calcular si una fecha (N,N,N) es correcta o no Devolver el valor mximo de una secuencia Calcular el numero de cifras de un numero natural Indicar si una secuencia esta ordenada de mayor a menor Devolver el numero de elementos de una secuencia.
Problema de Josefo
Un grupo de personas prefieren el suicidio a la esclavitud y deciden colocarse en crculo eligiendo siempre al siguiente como ejecutor y asesinando al situado despus del ejecutor. As sucesivamente hasta que quede un slo ciudadano que debera suicidarse. El problema de Josefo es conocer en qu lugar ha de colocarse en el corro para quedar el ltimo y reflexionar libremente sobre la decisin colectiva.
Windows Script
Introduccin a VBScript
VBScript
Qu es? Qu formato tiene?
Fichero de texto
Qu extensin tiene?
fichero.vbs
Cmo editarlo?
Con cualquier editor de texto Microsoft Visual Studio
Cmo ejecutarlo?
Con el comando WScript (WScript fichero.vbs) Doble click al fichero
Estructura de VBScript
Estructura general de un programa
Sentencias, lneas continuas, comentarios
Estructura de un Programa
***************************************** Programa de prueba Creado: 10/01/2006 ***************************************** declaro variable Dim mensaje inicializo la variable mensaje = hola, que tal? Estoy aprendiendo a programar en VBScript imprimo el mensaje Wscript.Echo mensaje **** Fin del programa
Constantes y Variables
Constantes
Const pi = 3.14159, beta = 0.3
Variables
pr = 200 precio = precio + 10 nombre = Santi
Constantes y Variables
Array
Dim secuencia(10) secuencia(0) = 11 Dim matriz(2, 2)
Objetos
Set obj = Wscript.Arguments
Constantes y Variables
Ejemplo 1: Calcular el precio real de dos ordenadores, que cuestan:
1123 euros 1326 euros
Operadores
Aritmticos
+, -, *, /, \ (entera), Mod, ^
Lgicos
And, Or, Xor, Imp, Not
Comparacin
<, >, =, <=, >=, <>
Precedencia de operador
Estructuras de Control
Condicin IF if condicin then sentencias elseif condicin2 then sentencias2 else sentencias3 end if Condicin Case select case variable case valor sentencias case valor2 sentencias2 case else sentencias3 end select
Estructuras de Control
Ejemplo 2: Ejecutar un programa que escriba una frase distinta cuando se cumpla una determinada condicin, segn el siguiente valor:
Valor 1 Valor 2 Otro valor
Bucles
Do while/until Do...loop while/until ForNext For EachNext While
Do while/until
Do While
do while condicin sentencias loop
Do Until
do until condicin sentencias loop
Ejemplo
do while a <= 10 a=a+1 loop
Ejemplo
do until a > 10 a=a+1 loop
Doloop while/until
Doloop While
do sentencias loop while condicin
Doloop Until
do sentencias loop until condicin
Ejemplo
do a=a+1 loop while a <= 10
Ejemplo
do a=a+1 loop until a > 10
For (each)Next
ForNext
For variable = inicio to fin sentencias Next
For eachNext
For each variable in seq sentencias Next
Ejemplo
For i = 1 to 10 a=a+1 Next
Ejemplo
For each persona in cola contador = contador + 1 Next
While
For eachNext
While condicin sentencias Wend
Ejemplo
Dim value Value = 1 While value < 10 value = value + 1 Wend
Funciones y Procedimientos
Funcin function nombre (parametros) nombre es variable resultado end function Ejemplo 3a: Realizar la suma de los 100 primeros nmeros (nmero triangular)
Funciones y Procedimientos
Procedimiento sub nombre (parametros) No se retorna valor end sub Ejemplo 3b: Realizar la suma de los 100 primeros nmeros (nmero triangular)
Clases
Formato:
class nombre declaraciones funciones o procedimientos end class
Clases
Atributos publicos y privados Propiedad get: el usuario me pide atributo virtual, que le devuelvo? Propiedad let: el usuario da valor a un atributo virtual, que hago con el?
property get var_virtual acciones end property property let var_virtual acciones end property
Ejemplo 5: Se desea tener los siguientes datos de cada unos de los usuarios:
Nombre completo Correo electrnico Login Password
Windows Script
Windows Script Host
Interaccin de entrada con el usuario Creacin de accesos directos Uso de Sistemas de Fichero y Entrada/Salida Control de Red Control de Windows y otras aplicaciones
Mtodo ECHO
Wscript.Echo Hola, Mundo Wscript.Echo Hola, , Mundo Wscript.Echo El precio es , precio, _ pero se puede rebajar a , rebaja
Cuadros de Mensaje
Formato:
MsgBox texto, botones, titulo
Ejemplo:
MsgBox esto es una prueba, 0, prueba
Posibilidades:
Botones
0: Boton OK 1: Ok y Cancel 2: Abort, Retry y Ignore 3: Yes, No y Cancel 4: Yes y No 5: Retry y Cancel
Cuadros de Mensaje
Iconos
0: Sin icono 16: Parada 32: Pregunta 48: Exclamacin 64: Informacin
Foco
0: Primer botn 256: Segundo botn 512: Tercer botn
Cuadros de Mensaje
Resultado del Cuadro (res = funcin MsgBox):
1: OK 2: Cancel 3: Abort 4: Retry 5: Ignore 6: Yes 7: No
Ejemplo 6: Hacer un cuadro de mensaje que pregunte si deseamos un viaje al Caribe. El programa debe contestar a cada posibilidad.
Objeto WScript
Permite acceder a argumentos
For each arg in Wscript.Arguments ,,, Next
Objeto WScript
Permite ejecutar otros programas
sh.Run mandato [, estilo] [, espera] Estilo Ventana
0: Oculta 1: Normal 2: Minimizada 3: Maximizada 4: Normal pero sin foco 6: Minimizada pero sin foco
Interaccin de entrada
Caja de entrada
res = InputBox (prompt, [titulo], [defecto], [x], [y])
Si resultado es , cancelacin de insercin Ejemplo 8: Ejecutar un acceso a un programa en el que el usuario tenga que indicar su username. Por cada usuario, debe contestar algo distinto. Hay tres usuarios registrados:
Luis, Juan y Maria
Ejemplo 11: Mostrar el contenido de la carpeta System Existencia de fichero fs.FileExists(fichero) Copiar ficheros fs.CopyFile path1 path2 Borrar ficheros fs.DeleteFile(fichero) Ejemplo 12: Sistema Backup
Control de Red
Objeto Wscript.Network Propiedades:
ComputerName: nombre maquina UserName: usuario logeado UserDomain: dominio conectado
Control de Red
Aadir Impresora de Red
Nw.AddPrinterConnection [port], LPpath
Listado Impresoras
set impresoras = Nw.EnumPrinterConnections Name for i = 0 to impresoras.Count 1 Step 2 puerto = impresoras(i) nombre = impresoras(i+1) next
Control de Red
Aadir unidades de red
Nw.MapNetWorkDrive unidad path
Ejemplo 15: Crear una unidad de red con una carpeta compartida de tu propia maquina
Dormir Proceso
Dormir script
Wscript.Sleep milisegundos
Uso de teclas
Teclas especiales
Retroceso Caps Lock DELETE {BS} {CAPSLOCK} {DEL} Num Lock F1 F2 F16 Shift Ctrl Alt {NUMLOCK} {F1} {F2} {F16} + ^ %
Tab
{TAB}
Ejemplo 16: Crear un script que ejecute la calculadora, calcule el producto entre 1564 y 54028 y luego se cierre automaticamente (Alt+F4)
Ejemplo 17: Crear un Script que ejecute el notepad y el wordpad, escriba una frase en notepad, la copie y pegue en wordpad
Windows Script
Conclusiones
Conclusiones
Muy sencillo de programar Muy sencillo de ejecutar Muy til Muy cmodo Puede llegar a ser complejo
Referencias
Microsoft Windows Script Host 2.0 Developerss Guide Gnter Born http://www.microsft.com/
Informacin
Mail: alberto.lpmtz@gmail.com By Alberto Lpez Martnez. Ing. Sistemas Computacionales.