WMI es la abreviatura de Windows Management Instrumentation en inglés. Sus funciones principales son: acceder a cierta información y servicios del host local, y puede administrar computadoras remotas (por supuesto, debe tener permisos suficientes), tales como: reiniciar, apagar, cerrar. procesos y crear procesos esperar.
Por supuesto, este artículo es aplicable a vbscript.
Información oficial de Microsoft:
Los ejemplos son los siguientes:
Para usar WMI, proyecte primero; consulte la biblioteca Microsoft WMI Scripting V1.1.
Obtener información de la tarjeta gráfica/tarjeta de sonido/memoria/sistema operativo
Información de la tarjeta de sonido
Private Sub wmiSoundDeviceInfo()Dim wmiObjSet As SWbemObjectSetDim obj As SWbemObjectSet wmiObjSet = GetObject(winmgmts:{impersonationLevel=impersonate}). _InstancesOf(Win32_SoundDevice)En error local Reanudar siguiente para cada obj en wmiObjSetMsgBox obj.ProductNameNextEnd SubInformación de la tarjeta gráfica
Private Sub wmiVideoControllerInfo()Dim wmiObjSet As SWbemObjectSetDim obj As SWbemObjectSet wmiObjSet = GetObject(winmgmts:{impersonationLevel=impersonate} _InstancesOf(Win32_VideoController)En error local Reanudar a continuación para cada obj en wmiObjSetMsgBox. obj.VideoProcessorNextEnd Subinformación de la memoria
Private Sub wmiPhysicalMemoryInfo()Dim wmiObjSet As SWbemObjectSetDim obj As SWbemObjectSet wmiObjSet = GetObject(winmgmts:{impersonationLevel=impersonate} _InstancesOf(Win32_PhysicalMemory)En caso de error local, reanudar a continuación para cada objItem en wmiObjSetDebug.Print BankLabel: & objItem.BankLabelDebug.Print Capacidad: & objItem.CapacityDebug.Print Caption: & objItem.CaptionDebug.Print CreationClassName: & objItem.CreationClassNameDebug.Print DataWidth: & objItem.DataWidthDebug.Print Descripción: & objItem.DescriptionDebug.Print DeviceLocator: & objItem.DeviceLocatorDebug.Print FormFactor: & objItem.FormFactorDebug.Print HotSwappable: & objItem.HotSwappableDebug.Print InstallDate: & objItem.InstallDateDebug.Print InterleaveDataDepth: & objItem.InterleaveDataDepthDebug.Print InterleavePosition: & objItem.InterleavePositionDebug.Print Fabricante: & objItem.ManufacturerDebug.Print MemoryType: & objItem.MemoryTypeDebug.Print Modelo: & objItem.ModelDebug.Print Nombre: & objItem.nameDebug.Print OtherIdentifyingInfo: & objItem.OtherIdentifyingInfoDebug.Print PartNumber: & objItem.PartNumberDebug.Print PositionInRow: & objItem.PositionInRowDebug.Print PoweredOn: & objItem.PoweredOnDebug.Print Extraíble: & objItem.RemovableDebug.Print Reemplazable: & objItem.ReplaceableDebug.Print SerialNumber: & objItem.SerialNumberDebug.Print SKU: & objItem.SKUDebug.Velocidad de impresión: & objItem.SpeedDebug.Estado de impresión: & objItem.StatusDebug.Print Etiqueta: & objItem.TagDebug.Print TotalWidth: & objItem.TotalWidthDebug.Print TypeDetail: & objItem.TypeDetailDebug.Print Versión: & objItem. VersiónNextEnd SubInformación del sistema operativo
Private Sub Command1_Click()Dim wmiObjSet As SWbemObjectSetDim obj As SWbemObjectDim msg As StringDim dtb As StringDim d As StringDim t As StringDim sesgo As LongOn Local Error Reanudar NextSet wmiObjSet = GetObject(winmgmts:{impersonationLevel=impersonate}).InstancesOf(Win32_OperatingSystem)Para cada obj en wmiObjSetMsgBox El sistema que está utilizando actualmente es & obj.CaptionNextEnd Subilustrar:
Puede encontrar una regla. De hecho, WMI usa el nombre de la biblioteca WIN32_class para extraer información. La siguiente tabla es la descripción de varias clases de hardware del sistema operativo de Microsoft.
La información sobre otras clases administradas de WMI se encuentra en
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wmisdk/wmi/accessing_hardware_and_software_through_wmi.asp
Puede encontrarlo, que también tiene un código de muestra.
Tabla de clases simple Win_32
Clases Win32
Las clases de Microsoft® Windows® le brindan los medios para manipular una variedad de objetos. La siguiente tabla identifica las categorías de las clases de Windows.
Descripción de la categoría
Hardware del sistema informático Clases que representan objetos relacionados con el hardware.
Sistema operativo Clases que representan objetos relacionados con el sistema operativo.
Aplicaciones instaladas Clases que representan objetos relacionados con el software.
Gestión de servicios WMI Clases utilizadas para gestionar WMI.
Contadores de rendimiento Clases que representan datos de rendimiento sin formato y formateados.
Hardware
Clases de hardware de sistemas informáticos
La subcategoría Dispositivos de refrigeración agrupa clases que representan ventiladores instrumentables, sondas de temperatura y dispositivos de refrigeración.
Descripción de clase
Win32_Fan Representa las propiedades de un dispositivo de ventilador en el sistema informático.
Win32_HeatPipe Representa las propiedades de un dispositivo de enfriamiento de tubo de calor.
Win32_Refrigeration Representa las propiedades de un dispositivo de refrigeración.
Win32_TemperatureProbe Representa las propiedades de un sensor de temperatura (termómetro electrónico).
Clases de dispositivos de entrada
La subcategoría Dispositivos de entrada agrupa clases que representan teclados y dispositivos señaladores.
Descripción de clase
Win32_Keyboard Representa un teclado instalado en un sistema Windows.
Win32_PointingDevice Representa un dispositivo de entrada utilizado para señalar y seleccionar regiones en la pantalla de un sistema informático Windows.
Clases de almacenamiento masivo
Las clases de la subcategoría Almacenamiento masivo representan dispositivos de almacenamiento como unidades de disco duro, unidades de CD-ROM y unidades de cinta.
Descripción de clase
Win32_AutochkSetting Representa la configuración para la operación de verificación automática de un disco.
Win32_CDROMDrive Representa una unidad de CD-ROM en un sistema informático Windows.
Win32_DiskDrive Representa una unidad de disco física vista por una computadora que ejecuta el sistema operativo Windows.
Win32_FloppyDrive Administra las capacidades de una unidad de disquete.
Win32_PhysicalMedia Representa cualquier tipo de documentación o medio de almacenamiento.
Win32_TapeDrive Representa una unidad de cinta en una computadora con Windows.
Clases de placa base, controlador y puerto
La subcategoría Placa base, Controladores y Puertos agrupa clases que representan dispositivos del sistema. Los ejemplos incluyen memoria del sistema, memoria caché y controladores.
Descripción de clase
Win32_1394Controller Representa las capacidades y la administración de un controlador 1394.
Win32_1394ControllerDevice Relaciona el controlador del bus serie de alta velocidad (IEEE 1394 Firewire) y la instancia CIM_LogicalDevice conectada a él.
Win32_AllocatedResource Relaciona un dispositivo lógico con un recurso del sistema.
Win32_AssociatedProcessorMemory Relaciona un procesador y su memoria caché.
Win32_BaseBoard Representa una placa base (también conocida como placa base o placa base).
Win32_BIOS Representa los atributos de los servicios básicos de entrada/salida (BIOS) del sistema informático que están instalados en la computadora.
Win32_Bus Representa un bus físico visto por un sistema operativo Windows.
Win32_CacheMemory Representa la memoria caché (interna y externa) en un sistema informático.
Win32_ControllerHasHub Representa los concentradores posteriores al controlador de bus serie universal (USB).
Win32_DeviceBus Relaciona un bus del sistema y un dispositivo lógico que utiliza el bus.
Win32_DeviceMemoryAddress Representa una dirección de memoria del dispositivo en un sistema Windows.
Win32_DeviceSettings Relaciona un dispositivo lógico y una configuración que se le puede aplicar.
Win32_DMAChannel Representa un canal de acceso directo a memoria (DMA) en un sistema informático Windows.
Win32_FloppyController Representa las capacidades y la capacidad de administración de un controlador de unidad de disquete.
Win32_IDEController Representa las capacidades de un dispositivo controlador de electrónica de unidad integrada (IDE).
Win32_IDEControllerDevice Clase de asociación que relaciona un controlador IDE y el dispositivo lógico.
Win32_InfraredDevice Representa las capacidades y la administración de un dispositivo de infrarrojos.
Win32_IRQResource Representa un número de línea de solicitud de interrupción (IRQ) en un sistema informático Windows.
Win32_MemoryArray Representa las propiedades de la matriz de memoria del sistema informático y las direcciones asignadas.
Win32_MemoryArrayLocation Relaciona una matriz de memoria lógica y la matriz de memoria física en la que existe.
Win32_MemoryDevice Representa las propiedades del dispositivo de memoria de un sistema informático junto con sus direcciones asignadas asociadas.
Win32_MemoryDeviceArray Relaciona un dispositivo de memoria y la matriz de memoria en la que reside.
Win32_MemoryDeviceLocation Clase de asociación que relaciona un dispositivo de memoria y la memoria física en la que existe.
Win32_MotherboardDevice Representa un dispositivo que contiene los componentes centrales del sistema informático Windows.
Win32_OnBoardDevice Representa dispositivos adaptadores comunes integrados en la placa base (placa del sistema).
Win32_ParallelPort Representa las propiedades de un puerto paralelo en un sistema informático Windows.
Win32_PCMCIAController Administra las capacidades de un dispositivo controlador del Adaptador de interfaz de tarjeta de memoria de computadora personal (PCMCIA).
Win32_PhysicalMemory Representa un dispositivo de memoria física ubicado en una computadora como disponible para el sistema operativo.
Win32_PhysicalMemoryArray Representa detalles sobre la memoria física del sistema informático.
Win32_PhysicalMemoryLocation Relaciona una matriz de memoria física y su memoria física.
Win32_PNPAllocatedResource Representa una asociación entre dispositivos lógicos y recursos del sistema.
Win32_PNPDevice Relaciona un dispositivo (conocido por Configuration Manager como PNPEntity) y la función que realiza.
Win32_PNPEntity Representa las propiedades de un dispositivo Plug and Play.
Win32_PortConnector Representa puertos de conexión física, como DB-25 pin macho, Centronics y PS/2.
Win32_PortResource Representa un puerto de E/S en un sistema informático Windows.
Win32_Processor Representa un dispositivo capaz de interpretar una secuencia de instrucciones de máquina en un sistema informático Windows.
Win32_SCSIController Representa un controlador de interfaz de sistema informático pequeño (SCSI) en un sistema Windows.
Win32_SCSIControllerDevice Relaciona un controlador SCSI y el dispositivo lógico (unidad de disco) conectado a él.
Win32_SerialPort Representa un puerto serie en un sistema Windows.
Win32_SerialPortConfiguration Representa la configuración para la transmisión de datos en un puerto serie de Windows.
Win32_SerialPortSetting Relaciona un puerto serie y sus ajustes de configuración.
Win32_SMBIOSMemory Representa las capacidades y la administración de dispositivos lógicos relacionados con la memoria.
Win32_SoundDevice Representa las propiedades de un dispositivo de sonido en un sistema informático Windows.
Win32_SystemBIOS Relaciona un sistema informático (incluidos datos como propiedades de inicio, zonas horarias, configuraciones de arranque o contraseñas administrativas) y un BIOS del sistema (servicios, idiomas, propiedades de administración del sistema).
Win32_SystemDriverPNPEntity Relaciona un dispositivo Plug and Play en el sistema informático Windows y el controlador que admite el dispositivo Plug and Play.
Win32_SystemEnclosure Representa las propiedades asociadas con un gabinete de sistema físico.
Win32_SystemMemoryResource Representa un recurso de memoria del sistema en un sistema Windows.
Win32_SystemSlot Representa puntos de conexión físicos, incluidos puertos, ranuras y periféricos de la placa base, y puntos de conexión propietarios.
Win32_USBController Administra las capacidades de un controlador de bus serie universal (USB).
Win32_USBControllerDevice Relaciona un controlador USB y las instancias CIM_LogicalDevice conectadas a él.
Win32_USBHub Representa las características de administración de un concentrador USB.
Clases de dispositivos de red
La subcategoría Dispositivos de red agrupa clases que representan el controlador de interfaz de red, sus configuraciones y sus ajustes.
Descripción de clase
Win32_NetworkAdapter Representa un adaptador de red en un sistema Windows.
Win32_NetworkAdapterConfiguration Representa los atributos y comportamientos de un adaptador de red. No se garantiza que la clase sea compatible después de la ratificación de la especificación de red CIM del Distributed Management Task Force (DMTF).
Win32_NetworkAdapterSetting Relaciona un adaptador de red y sus ajustes de configuración.
Clases de poder
La subcategoría Energía agrupa clases que representan fuentes de alimentación, baterías y eventos relacionados con estos dispositivos.
Descripción de clase
Win32_AssociatedBattery Relaciona un dispositivo lógico y la batería que está utilizando.
Win32_Battery Representa una batería conectada al sistema informático.
Win32_CurrentProbe Representa las propiedades de un sensor de monitoreo de corriente (amperímetro).
Win32_PortableBattery Representa las propiedades de una batería portátil, como la que se usa para una computadora portátil.
Win32_PowerManagementEvent Representa eventos de administración de energía resultantes de cambios en el estado de energía.
Win32_UninterruptiblePowerSupply Representa las capacidades y la capacidad de gestión de un sistema de alimentación ininterrumpida (UPS).
Win32_VoltageProbe Representa las propiedades de un sensor de voltaje (voltímetro electrónico).
Clases de impresión
La subcategoría Impresión agrupa clases que representan impresoras, configuraciones de impresora y trabajos de impresión.
Descripción de clase
Win32_DriverForDevice Relaciona una impresora con un controlador de impresora.
Win32_Printer Representa un dispositivo conectado a un sistema informático Windows que es capaz de reproducir una imagen visual en un medio.
Win32_PrinterConfiguration Define la configuración de un dispositivo de impresora.
Win32_PrinterController Relaciona una impresora y el dispositivo local al que está conectada la impresora.
Win32_PrinterDriver Representa los controladores para una instancia de Win32_Printer.
Win32_PrinterDriverDll Relaciona una impresora local y su archivo de controlador (no el controlador en sí).
Win32_PrinterSetting Relaciona una impresora y sus ajustes de configuración.
Win32_PrintJob Representa un trabajo de impresión generado por una aplicación de Windows.
Win32_TCPIPPrinterPort Representa un punto de acceso al servicio TCP/IP.
Clases de Telefonía
La subcategoría Telefonía agrupa clases que representan dispositivos de módem telefónico antiguos y sus conexiones serie asociadas.
Descripción de clase
Win32_POTSModem Representa los servicios y características de un módem de servicio telefónico antiguo (POTS) en un sistema Windows.
Win32_POTSModemToSerialPort Relaciona un módem y el puerto serie que utiliza el módem.
Clases de vídeo y monitor
La subcategoría Vídeo y monitores agrupa clases que representan monitores, tarjetas de vídeo y sus configuraciones asociadas.
Descripción de clase
Win32_DesktopMonitor Representa el tipo de monitor o dispositivo de visualización conectado al sistema informático.
Win32_DisplayConfiguration Representa información de configuración para el dispositivo de visualización en un sistema Windows. Esta clase está obsoleta. En lugar de esta clase, use las propiedades de las clases Win32_VideoController, Win32_DesktopMonitor y CIM_VideoControllerResolution.
Win32_DisplayControllerConfiguration Representa la información de configuración del adaptador de video de un sistema Windows. Esta clase está obsoleta. En lugar de esta clase, use las propiedades de las clases Win32_VideoController, Win32_DesktopMonitor y CIM_VideoControllerResolution.
Win32_VideoConfiguration Esta clase se eliminó de Windows XP y los intentos posteriores de usarla generarán un error fatal. En lugar de esta clase, use las propiedades contenidas en las clases Win32_VideoController, Win32_DesktopMonitor y CIM_VideoControllerResolution.
Win32_VideoController Representa las capacidades y la capacidad de administración del controlador de video en un sistema informático Windows.
Win32_VideoSettings Relaciona un controlador de video y la configuración de video que se le puede aplicar.
Cada clase tiene una estructura de datos correspondiente, como
tarjeta grafica
clase Win32_VideoController: CIM_PCVideoController
{
uint16 Capacidades del acelerador[];
compatibilidad del adaptador de cadena;
stringAdapterDACTType;
Adaptador uint32RAM;
uint16 Disponibilidad;
cadena CapabilityDescriptions[];
título de cadena;
uint32 Entradas de tabla de colores;
uint32 Código de error del administrador de configuración;
booleano ConfigManagerUserConfig;
cadena CreationClassName;
uint32 Bits actuales por píxel;
uint32 ResoluciónHorizontalActual;
uint64 NúmeroActualDeColores;
uint32 Número actual de columnas;
uint32 Número actual de filas;
uint32 Tasa de actualización actual;
uint16 Modo de escaneo actual;
uint32 ResoluciónVerticalActual;
Descripción de cadena;
cadena ID de dispositivo;
uint32 Plumas específicas del dispositivo;
uint32 Tipo de tramado;
fecha y hora Fecha del conductor;
cadena Versión del controlador;
Error booleano borrado;
cadena ErrorDescription;
uint32 ICMIntent;
uint32 ICMMétodo;
cadena InfFilename;
cadena InfSection;
fecha y hora Fecha de instalación;
cadena InstalledDisplayDrivers;
uint32 Último código de error;
uint32 MaxMemorySupported;
uint32 Número máximo controlado;
uint32 MaxRefreshRate;
uint32 Tasa de actualización mínima;
booleano monocromo;
Nombre de cadena;
uint16 NúmeroDePlanosColor;
uint32 Número de páginas de vídeo;
cadena PNPDeviceID;
uint16 Capacidades de gestión de energía[];
booleano PowerManagementSupported;
Protocolo uint16 admitido;
uint32 EntradasDePaletaDeSistemaReservadas;
uint32 Versión de especificación;
Estado de cadena;
uint16 Información de estado;
cadena SystemCreationClassName;
cadena Nombre del sistema;
uint32 SystemPaletteEntries;
fecha y hora Hora del último reinicio;
uint16 VideoArquitectura;
uint16 Tipo de memoria de vídeo;
uint16 Modo de vídeo;
cadena VideoModeDescription;
cadena VideoProcessor;
};
Tarjeta de sonido, etc
clase Win32_SoundDevice: CIM_LogicalDevice
{
uint16 Disponibilidad;
título de cadena;
uint32 Código de error del administrador de configuración;
booleano ConfigManagerUserConfig;
cadena CreationClassName;
Descripción de cadena;
cadena ID de dispositivo;
uint16 DMABufferSize;
Error booleano borrado;
cadena ErrorDescription;
fecha y hora Fecha de instalación;
uint32 Último código de error;
fabricante de cuerdas;
uint32 MPU401Dirección;
Nombre de cadena;
cadena PNPDeviceID;
uint16 Capacidades de gestión de energía[];
booleano PowerManagementSupported;
cadena Nombre del producto;
Estado de cadena;
uint16 Información de estado;
cadena SystemCreationClassName;
cadena Nombre del sistema;
};
clase Win32_PrintJob: CIM_Job
{
título de cadena;
tipo de datos de cadena;
Descripción de cadena;
documento de cadena;
cadena Nombre del conductor;
fecha y hora Tiempo transcurrido;
cadena HostPrintQueue;
fecha y hora Fecha de instalación;
uint32 Id. de trabajo;
cadena Estado del trabajo;
Nombre de cadena;
cadena Notificar;
propietario de cadena;
uint32 páginas impresas;
Parámetros de cadena;
cadena Procesador de impresión;
uint32 Prioridad;
tamaño uint32;
fecha y hora Hora de inicio;
Estado de cadena;
uint32 Máscara de estado;
fecha y hora Hora de envío;
uint32 TotalPáginas;
fecha y hora hasta hora;
};
como
Establezca wmiObjSet = GetObject(winmgmts:{impersonationLevel=suplantar} _).
Instancias de (Win32_PrintJob)
Puede obtener información como imprimir listas de tareas.
Para VB, la API se usa principalmente para obtener información de hardware y software del sistema. Ahora podemos usar WMI para lograr rápidamente nuestros objetivos. Por ejemplo, obtener información sobre controladores/tarjetas gráficas/compartida, etc., será conveniente y efectivo.