Este ejemplo de red de Windows Script Host muestra cómo un administrador de red puede utilizar una secuencia de comandos en varios equipos remotos de la red. La secuencia de comandos realiza varias tareas administrativas útiles, como:
Nota WMI es una tecnología eficaz y sofisticada basada en Web Based Enterprise Management (WBEM). WMI se utiliza principalmente para la instrumentación y el acceso a la información de administración de un entorno empresarial. Para obtener más información acerca de WMI, consulte Microsoft Windows Management Instrumentation: Background and Overview, en la dirección (http://msdn.microsoft.com/library/default.asp?URL=/library/backgrnd/html/wmixwdm.asp).
El administrador debe establecer la configuración de seguridad necesaria en los equipos remotos. Para obtener más información, consulte Configurar WSH remoto. A continuación, debe copiar y pegar el ejemplo en el procesador de secuencias de comandos y modificar las constantes para que correspondan a las rutas de acceso de red y a los nombres de los equipos remotos. Por último, el administrador puede ejecutar la secuencia de comandos.
Para ejecutar este ejemplo
var oController = new ActiveXObject"WSHController" var oProcess = oController.CreateScript "c:\MiDirectorioLocal\\AdminScript.vbs", "remmachine" oProcess.Execute() while (oProcess.Status != 2) WScript.Sleep(100) WScript.Echo"Terminado"
' Ejemplo de administración de WSH remoto AdminScript.vbs ' ' El código de este ejemplo realiza algunas tareas administrativas ' que son habituales para un administrador de red ' en el trabajo diario: crea un directorio público, lo llena ' con algunos archivos y lo comparte. También configura ' la conexión de los equipos con la impresora predeterminada. ' Tenga en cuenta que, para reducir el tamaño del código, el control ' de errores no está incluido. Si se utilizara en un entorno de producción real ' el control de errores sería necesario, pues muchas de estas operaciones ' pueden producir errores (por ejemplo, espacio insuficiente en disco). Option Explicit Dim FSO Dim Servicios Dim SecDescClase Dim SecDesc Dim Confianza Dim ACE Dim Recurso Dim InParam Dim Red Const NombreCarpeta = "C:\Public" Const ServidorAdmin = "\\EquipoAdmin" Const NombreRecurso = "Pubs" Const RecursoImpresora = "\\ImpresorasCorp\RecursoImpresora" ' Primero se agrega una impresora a este equipo y se configura como predeterminada. Set Red = CreateObject("WScript.Network") Network.AddWindowsPrinterConnection RecursoImpresora Network.SetDefaultPrinter RecursoImpresora ' Después se crea una carpeta y se copian algunos archivos. Set FSO = CreateObject("Scripting.FileSystemObject") If Not FSO.FolderExists(NombreCarpeta) Then FSO.CreateFolder(NombreCarpeta) End If Call FSO.CopyFile(ServidorAdmin & "\Public\Imagenes\*.*", NombreCarpeta) ' Utiliza WMI para crear un recurso compartido en la carpeta ' Consulte el SDK de WMI para obtener información acerca de este código. Set Servicios = GetObject("WINMGMTS:{impersonationLevel=impersonate,(Security)}!" & ServidorAdmin & "\ROOT\CIMV2") Set SecDescClase = Servicios.Get("Win32_SecurityDescriptor") Set SecDesc = SecDescClase.SpawnInstance_() Set Confianza = Servicios.Get("Win32_Trustee").SpawnInstance_ Confianza.Domain = Null Confianza.Name = "EVERYONE" Confianza.Properties_.Item("SID") = Array(1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0) Set ACE = Servicios.Get("Win32_Ace").SpawnInstance_ ACE.Properties_.Item("AccessMask") = 2032127 ACE.Properties_.Item("AceFlags") = 3 ACE.Properties_.Item("AceType") = 0 ACE.Properties_.Item("Trustee") = Confianza SecDesc.Properties_.Item("DACL") = Array(ACE) Set Recurso = Servicios.Get("Win32_Share") Set InParam = Recurso.Methods_("Create").InParameters.SpawnInstance_() InParam.Properties_.Item("Access") = SecDesc InParam.Properties_.Item("Description") = "Recurso compartido público" InParam.Properties_.Item("Name") = NombreRecurso InParam.Properties_.Item("Path") = NombreCarpeta InParam.Properties_.Item("Type") = 0 Share.ExecMethod_("Create", InParam) ' Esto es todo.
Introducción a Windows Scripting Host | Acceso a redes | Configurar WSH remoto | Ejecutar secuencias de comandos de forma remota
Ayuda de Javascript y Vbscript para Javascripts.astalaweb.com. |