TEMA
    about_WMI_cmdlets
    
DESCRIPCIÓN BREVE
    Proporciona información adicional sobre Instrumental de
    administración de Windows (WMI) y Windows PowerShell.
           
DESCRIPCIÓN DETALLADA
    En este tema se proporciona información sobre la tecnología WMI,
    los cmdlets de WMI para Windows PowerShell, la comunicación
    remota basada en WMI, los aceleradores de WMI y la solución de
    problemas de WMI. También se proporcionan vínculos a información
    adicional sobre WMI.

                 
  Acerca de WMI 

      Instrumental de administración de Windows (WMI) es la
      implementación de Microsoft de Web-Based Enterprise Management
      (WBEM), que es una iniciativa industrial para desarrollar
      una tecnología estándar que permita el acceso a información
      de administración en un entorno empresarial. WMI utiliza la
      norma de la industria CIM (Modelo de información común) para
      representar sistemas, aplicaciones, redes, dispositivos y
      otros componentes administrados. El desarrollo y el
      mantenimiento de la norma CIM corre a cargo del Grupo de
      trabajo de administración distribuida (DMTF). Puede utilizar
      WMI para administrar equipos tanto locales como remotos. Por
      ejemplo, puede utilizar WMI para realizar las
      acciones siguientes: 

          -- Iniciar un proceso en un equipo remoto.

          -- Reiniciar un equipo de forma remota.

          -- Obtener una lista de las aplicaciones instaladas en un
             equipo local o remoto.

          -- Consultar los registros de eventos de Windows en un
             equipo local o remoto.

 
  Cmdlets de WMI para Windows PowerShell

      Windows PowerShell implementa la funcionalidad de WMI mediante
      un conjunto de cmdlets que están disponibles en Windows
      PowerShell de forma predeterminada. Puede utilizar estos
      cmdlets para completar las tareas de extremo a extremo
      necesarias para administrar equipos locales y remotos.
 
      Se incluyen los cmdlets de WMI siguientes.

      Cmdlet                 Descripción
      ------------------     ----------------------------------------------
      
      Get-WmiObject          Obtiene instancias de las clases de WMI o
                             información sobre las clases disponibles.

      Invoke-WmiMethod       Llama a métodos de WMI.

      Register-WmiEvent      Suscribe para un evento de WMI.

      Remove-WmiObject       Elimina instancias y clases de WMI.

      Set-WmiInstance        Crea o modifica instancias de clases
                             de WMI.

    
  Comandos de ejemplo

      El comando siguiente muestra la información del BIOS para el
      equipo local.
         
          C:\PS> get-wmiobject win32_bios | format-list *

        
      El comando siguiente muestra información acerca del servicio
      WinRM para tres equipos remotos.
        
          C:\PS> get-wmiobject -query "select * from win32_service
          where name='WinRM'" -computername server01, server01,
          server03
                 

      El comando siguiente, que es más complejo, produce la salida de
      todas las instancias de un programa.
         
          C:\PS> notepad.exe
          C:\PS> $np = get-wmiobject -query "select * from win32
          _process where name='notepad.exe'" 
          C:\PS> $np | remove-wmiobject

  Comunicación remota basada en WMI 

      Aunque la capacidad de administrar un sistema local a través de
      WMI es útil, la funcionalidad de comunicación remota es la
      que hace de WMI una herramienta administrativa eficaz. WMI
      utiliza el Modelo de objetos componentes distribuido (DCOM)
      de Microsoft para la conexión con sistemas y la administración
      de los mismos. Es posible que tenga que configurar algunos
      sistemas para permitir las conexiones DCOM. La configuración
      del firewall y los permisos DCOM bloqueados pueden bloquear
      la capacidad de WMI para administrar sistemas de forma remota.
      
   

  Aceleradores de tipo de WMI

      Windows PowerShell incluye aceleradores de tipo de WMI. Estos
      aceleradores (accesos directos) permiten un acceso directo
      a los objetos de WMI superior al que permitiría un enfoque
      de aceleradores que no sean de tipo. 

      Los aceleradores de tipo siguientes se admiten con WMI:

          [WMISEARCHER]: Acceso directo para buscar objetos de WMI.

          [WMICLASS]: Acceso directo para obtener acceso a los métodos
          y propiedades estáticos de una clase.

          [WMI]: Acceso directo para obtener una única instancia de
          una clase.

      [WMISEARCHER] es un acelerador de tipo para ManagementObjectSearcher.
      
      Puede tomar un constructor de cadena para crear un buscador en
      el que se pueda realizar a continuación GET().

      Por ejemplo:
    
      PS> $s = [WmiSearcher]'Select * from Win32_Process where
      Handlecount > 1000'
      PS> $s.Get() |sort handlecount |ft handlecount,__path,name -auto

     handlecount  __PATH                                              name
      -----------  ------                                              ----
      1105         \\SERVER01\root\cimv2:Win32_Process.Handle="3724"   powershell...
      1132         \\SERVER01\root\cimv2:Win32_Process.Handle="1388"   winlogon.exe
      1495         \\SERVER01\root\cimv2:Win32_Process.Handle="2852"   iexplore.exe
      1699         \\SERVER01\root\cimv2:Win32_Process.Handle="1204"   OUTLOOK.EXE
      1719         \\SERVER01\root\cimv2:Win32_Process.Handle="1912"   iexplore.exe
      2579         \\SERVER01\root\cimv2:Win32_Process.Handle="1768"   svchost.exe


      [WMICLASS] es un acelerador de tipo para ManagementClass. Tiene
      un constructor de cadena que toma una ruta de acceso local o
      absoluta de WMI a una clase de WMI y devuelve un objeto que
      está enlazado a esa clase. 

      Por ejemplo:

      PS> $c = [WMICLASS]"root\cimv2:WIn32_Process"
      PS> $c |fl *
      Name             : Win32_Process
      __GENUS          : 1
      __CLASS          : Win32_Process
      __SUPERCLASS     : CIM_Process
      __DYNASTY        : CIM_ManagedSystemElement
      __RELPATH        : Win32_Process
      __PROPERTY_COUNT : 45
      __DERIVATION     : {CIM_Process, CIM_LogicalElement, CIM_ManagedSystemElement}
      
      __SERVER         : SERVER01
      __NAMESPACE      : ROOT\cimv2
      __PATH           : \\SERVER01\ROOT\cimv2:Win32_Process

      [WMI] es un acelerador de tipo para ManagementObject. Tiene un
      constructor de cadena que toma una ruta de acceso local o
      absoluta de WMI a una instancia de WMI y devuelve un objeto
      que está enlazado a esa instancia. 

      Por ejemplo:

      PS> $p = [WMI]'\\SERVER01\root\cimv2:Win32_Process.Handle="1204"'
      PS> $p.Name
      OUTLOOK.EXE
 

  Solución de problemas de WMI 

      A continuación se enumeran los problemas más comunes que se
      pueden producir al intentar la conexión con un equipo remoto.
      

    Problema 1: El equipo remoto no está en línea. 

      Si un equipo no está en línea, no se podrá establecer conexión
      con él utilizando WMI. Puede recibir el mensaje de
      error siguiente:

          "El equipo del servidor remoto no existe o no
          está disponible"

      Si recibe este mensaje de error, compruebe si el equipo está en
      línea. Intente hacer ping al equipo remoto.
 
 
    Problema 2: No tiene derechos de administrador local en el equipo
    remoto.
 
      Para utilizar WMI de forma remota, debe tener derechos de
      administrador local en el equipo remoto. Si no los tiene,
      se denegará el acceso a ese equipo.

      Para comprobar la seguridad de espacio de nombres:

          a. Haga clic en Inicio, haga clic con el botón secundario en
             Mi PC y, a continuación, haga clic en Administrar.

          b. En Administración del equipo, expanda Servicios y
             Aplicaciones, haga clic con el botón secundario en
             Control WMI y, a continuación, haga clic en Propiedades.
          

          c. En el cuadro de diálogo Propiedades de Control WMI, haga
             clic en la ficha Seguridad.
     
 
    Problema 3: Un firewall está bloqueando el acceso al equipo
    remoto. 

      WMI utiliza los protocolos DCOM (COM distribuido) y RPC (Llamada
      a procedimiento remoto) para recorrer la red. De forma
      predeterminada, numerosos firewalls bloquean
      el tráfico DCOM y RPC. Si su firewall está bloqueando estos
      protocolos, se producirá un error en la conexión. Por ejemplo,
      Firewall de Windows en Microsoft Windows XP Service Pack 2
      se configura para bloquear automáticamente todo el tráfico
      de red no solicitado, incluidos DCOM y WMI. En su
      configuración predeterminada, Firewall de Windows rechaza
      una solicitud de WMI de entrada y se recibe el mensaje de
      error siguiente:

          "El equipo del servidor remoto no existe o no está
          disponible" 
       

  Más información sobre WMI

      Para obtener más información sobre WMI, vea los temas siguientes
      en MSDN Library (Microsoft Developer Network):

          "Acerca de WMI" (puede estar en inglés)
          https://go.microsoft.com/fwlink/?LinkId=142212

          "Solución de problemas de WMI" (puede estar en inglés)
          https://go.microsoft.com/fwlink/?LinkId=142213

      Y vea "Secrets of Windows Management Instrumentation - Troubleshooting 
      and Tips" en Script Center de Microsoft TechNet:

          https://go.microsoft.com/fwlink/?LinkId=142214
 

VEA TAMBIÉN
    Versión en pantalla: https://go.microsoft.com/fwlink/?LinkId=142219
    Get-WmiObject
    Invoke-WmiMethod
    Register-WmiEvent
    Remove-WmiObject
    Set-WmiInstance

 




Tabla de contenido