WMI adalah singkatan dari Windows Management Instrumentation dalam bahasa Inggris. Fungsi utamanya adalah: mengakses beberapa informasi dan layanan dari host lokal, serta dapat mengelola komputer jarak jauh (tentunya harus memiliki izin yang memadai), seperti: restart, shut down, close. proses, dan buat proses tunggu.
Tentu saja artikel ini berlaku untuk vbscript
Informasi resmi Microsoft:
Contohnya adalah sebagai berikut:
Untuk menggunakan WMI, proyek terlebih dahulu - lihat Perpustakaan Microsoft WMI Scripting V1.1
Dapatkan informasi kartu grafis/kartu suara/memori/sistem operasi
Informasi kartu suara
Sub Pribadi wmiSoundDeviceInfo()Redupkan wmiObjSet Sebagai SWbemObjectSetDim obj Sebagai SWbemObjectSet wmiObjSet = GetObject(winmgmts:{impersonationLevel=impersonate}). SubInformasi kartu grafis
Sub Pribadi wmiVideoControllerInfo()Redupkan wmiObjSet Sebagai SWbemObjectSetDim obj Sebagai SWbemObjectSet wmiObjSet = GetObject(winmgmts:{impersonationLevel=impersonate}). obj.VideoProcessorNextEnd Subinformasi memori
Sub Pribadi wmiPhysicalMemoryInfo()Redupkan wmiObjSet Sebagai SWbemObjectSetDim obj Sebagai SWbemObjectSet wmiObjSet = GetObject(winmgmts:{impersonationLevel=impersonate}). & objItem.BankLabelDebug.Print Kapasitas: & objItem.CapacityDebug.Print Keterangan: & objItem.CaptionDebug.Print CreationClassName: & objItem.CreationClassNameDebug.Print DataWidth: & objItem.DataWidthDebug.Print Deskripsi: & 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 Produsen: & objItem.ManufacturerDebug.Print MemoryType: & objItem.MemoryTypeDebug.Print Model: & objItem.ModelDebug.Print Nama: & objItem.nameDebug.Print OtherIdentifyingInfo: & objItem.OtherIdentifyingInfoDebug.Print PartNumber: & objItem.PartNumberDebug.Print PositionInRow: & objItem.PositionInRowDebug.Print PoweredOn: & objItem.PoweredOnDebug.Print Dapat Dilepas: & objItem.RemovableDebug.Print Dapat Diganti: & objItem.ReplaceableDebug.Print SerialNumber: & objItem.SerialNumberDebug.Print SKU: & objItem.SKUDebug.Kecepatan Cetak: & objItem.SpeedDebug.Status Cetak: & objItem.StatusDebug.Tag Cetak: & objItem.TagDebug.Print TotalWidth: & objItem.TotalWidthDebug.Print TypeDetail: & objItem.TypeDetailDebug.Versi Cetak: & objItem. VersiBerikutnyaAkhir SubInformasi sistem operasi
Sub Pribadi Command1_Click()Dim wmiObjSet As SWbemObjectSetDim obj As SWbemObjectDim pesan As StringDim dtb As StringDim d As StringDim t As StringDim bias As LongOn Local Error Lanjutkan NextSet wmiObjSet = GetObject(winmgmts:{impersonationLevel=impersonate}).InstancesOf(Win32_OperatingSystem)Untuk Setiap objek Di wmiObjSetMsgBox Sistem yang saat ini Anda gunakan adalah & obj.CaptionNextEnd Submenjelaskan:
Anda mungkin menemukan aturan. Faktanya, WMI menggunakan nama perpustakaan WIN32_class untuk mengekstrak informasi. Tabel berikut adalah deskripsi berbagai kelas perangkat keras sistem operasi Microsoft.
Informasi tentang kelas terkelola WMI lainnya ada di
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wmisdk/wmi/accessing_hardware_and_software_through_wmi.asp
Anda dapat menemukannya, yang juga memiliki beberapa kode contoh.
Tabel kelas Win_32 sederhana
Kelas Win32
Kelas Microsoft® Windows® memberi Anda sarana untuk memanipulasi berbagai objek. Tabel berikut mengidentifikasi kategori kelas Windows.
Deskripsi Kategori
Perangkat keras sistem komputer Kelas yang mewakili objek terkait perangkat keras.
Kelas sistem operasi yang mewakili objek terkait sistem operasi.
Aplikasi terinstal Kelas yang mewakili objek terkait perangkat lunak.
Manajemen layanan WMI Kelas yang digunakan untuk mengelola WMI.
Penghitung kinerja Kelas yang mewakili data kinerja yang diformat dan mentah.
Perangkat keras
Kelas Perangkat Keras Sistem Komputer
Subkategori Perangkat Pendingin mengelompokkan kelas-kelas yang mewakili kipas yang dapat diinstrumentasi, probe suhu, dan perangkat pendingin.
Deskripsi Kelas
Win32_Fan Mewakili properti perangkat kipas di sistem komputer.
Win32_HeatPipe Mewakili properti perangkat pendingin pipa panas.
Win32_Refrigeration Mewakili properti perangkat pendingin.
Win32_TemperatureProbe Mewakili properti sensor suhu (termometer elektronik).
Kelas Perangkat Input
Subkategori Perangkat Input mengelompokkan kelas-kelas yang mewakili keyboard dan perangkat penunjuk.
Deskripsi Kelas
Win32_Keyboard Merupakan keyboard yang diinstal pada sistem Windows.
Win32_PointingDevice Merupakan perangkat input yang digunakan untuk menunjuk dan memilih wilayah pada tampilan sistem komputer Windows.
Kelas Penyimpanan Massal
Kelas dalam subkategori Penyimpanan Massal mewakili perangkat penyimpanan seperti hard disk drive, drive CD-ROM, dan tape drive.
Deskripsi Kelas
Win32_AutochkSetting Merupakan pengaturan untuk operasi autocheck pada disk.
Win32_CDROMDrive Merupakan drive CD-ROM pada sistem komputer Windows.
Win32_DiskDrive Merupakan drive disk fisik seperti yang terlihat oleh komputer yang menjalankan sistem operasi Windows.
Win32_FloppyDrive Mengelola kemampuan drive floppy disk.
Win32_PhysicalMedia Mewakili semua jenis dokumentasi atau media penyimpanan.
Win32_TapeDrive Merupakan tape drive pada komputer Windows.
Kelas Motherboard, Pengontrol, dan Port
Subkategori Motherboard, Pengontrol, dan Port mengelompokkan kelas-kelas yang mewakili perangkat sistem. Contohnya meliputi memori sistem, memori cache, dan pengontrol.
Deskripsi Kelas
Win32_1394Controller Mewakili kemampuan dan pengelolaan pengontrol 1394.
Win32_1394ControllerDevice Menghubungkan pengontrol bus serial berkecepatan tinggi (IEEE 1394 Firewire) dan instance CIM_LogicalDevice yang terhubung dengannya.
Win32_AllocationdResource Menghubungkan perangkat logis ke sumber daya sistem.
Win32_AssociatedProcessorMemory Menghubungkan prosesor dan memori cache-nya.
Win32_BaseBoard Merupakan alas tiang (juga dikenal sebagai motherboard atau board sistem).
Win32_BIOS Mewakili atribut layanan input/output dasar (BIOS) sistem komputer yang diinstal pada komputer.
Win32_Bus Merupakan bus fisik seperti yang terlihat oleh sistem operasi Windows.
Win32_CacheMemory Merupakan memori cache (internal dan eksternal) pada sistem komputer.
Win32_ControllerHasHub Mewakili hub hilir dari pengontrol universal serial bus (USB).
Win32_DeviceBus Menghubungkan bus sistem dan perangkat logis menggunakan bus.
Win32_DeviceMemoryAddress Merupakan alamat memori perangkat pada sistem Windows.
Win32_DeviceSettings Berhubungan dengan perangkat logis dan pengaturan yang dapat diterapkan padanya.
Win32_DMAChannel Merupakan saluran akses memori langsung (DMA) pada sistem komputer Windows.
Win32_FloppyController Mewakili kemampuan dan kapasitas manajemen pengontrol drive floppy disk.
Win32_IDEController Mewakili kemampuan perangkat pengontrol Integrated Drive Electronics (IDE).
Kelas Asosiasi Win32_IDEControllerDevice yang menghubungkan pengontrol IDE dan perangkat logis.
Win32_InfraredDevice Mewakili kemampuan dan pengelolaan perangkat inframerah.
Win32_IRQResource Merupakan nomor baris permintaan interupsi (IRQ) pada sistem komputer Windows.
Win32_MemoryArray Mewakili properti array memori sistem komputer dan alamat yang dipetakan.
Win32_MemoryArrayLocation Menghubungkan array memori logis dan array memori fisik tempat array tersebut berada.
Win32_MemoryDevice Mewakili properti perangkat memori sistem komputer beserta alamat terkait yang dipetakan.
Win32_MemoryDeviceArray Menghubungkan perangkat memori dan array memori di mana perangkat tersebut berada.
Kelas Asosiasi Win32_MemoryDeviceLocation yang menghubungkan perangkat memori dan memori fisik di mana perangkat tersebut berada.
Win32_MotherboardDevice Merupakan perangkat yang berisi komponen pusat sistem komputer Windows.
Win32_OnBoardDevice Merupakan perangkat adaptor umum yang terpasang pada motherboard (board sistem).
Win32_ParallelPort Mewakili properti port paralel pada sistem komputer Windows.
Win32_PCMCIAController Mengelola kemampuan perangkat pengontrol Personal Computer Memory Card Interface Adapter (PCMCIA).
Win32_PhysicalMemory Merupakan perangkat memori fisik yang terletak di komputer yang tersedia untuk sistem operasi.
Win32_PhysicalMemoryArray Mewakili rincian tentang memori fisik sistem komputer.
Win32_PhysicalMemoryLocation Menghubungkan array memori fisik dan memori fisiknya.
Win32_PNPAllocationdResource Mewakili hubungan antara perangkat logis dan sumber daya sistem.
Win32_PNPDevice Menghubungkan perangkat (dikenal oleh Manajer Konfigurasi sebagai PNPEntity), dan fungsi yang dijalankannya.
Win32_PNPEntity Mewakili properti perangkat Plug and Play.
Win32_PortConnector Mewakili port koneksi fisik, seperti DB-25 pin male, Centronics, dan PS/2.
Win32_PortResource Mewakili port I/O pada sistem komputer Windows.
Win32_Processor Merupakan perangkat yang mampu menafsirkan urutan instruksi mesin pada sistem komputer Windows.
Win32_SCSIController Merupakan pengontrol antarmuka sistem komputer kecil (SCSI) pada sistem Windows.
Win32_SCSIControllerDevice Menghubungkan pengontrol SCSI dan perangkat logis (disk drive) yang terhubung dengannya.
Win32_SerialPort Merupakan port serial pada sistem Windows.
Win32_SerialPortConfiguration Merupakan pengaturan untuk transmisi data pada port serial Windows.
Win32_SerialPortSetting Berhubungan dengan port serial dan pengaturan konfigurasinya.
Win32_SMBIOSMemory Mewakili kemampuan dan pengelolaan perangkat logis terkait memori.
Win32_SoundDevice Merupakan properti perangkat suara pada sistem komputer Windows.
Win32_SystemBIOS Berhubungan dengan sistem komputer (termasuk data seperti properti startup, zona waktu, konfigurasi boot, atau kata sandi administratif) dan BIOS sistem (layanan, bahasa, properti manajemen sistem).
Win32_SystemDriverPNPEntity Menghubungkan perangkat Plug and Play pada sistem komputer Windows dan driver yang mendukung perangkat Plug and Play.
Win32_SystemEnclosure Mewakili properti yang terkait dengan enklosur sistem fisik.
Win32_SystemMemoryResource Merupakan sumber daya memori sistem pada sistem Windows.
Win32_SystemSlot Mewakili titik koneksi fisik termasuk port, slot motherboard dan periferal, dan titik koneksi kepemilikan.
Win32_USBController Mengelola kemampuan pengontrol universal serial bus (USB).
Win32_USBControllerDevice Menghubungkan pengontrol USB dan instance CIM_LogicalDevice yang terhubung dengannya.
Win32_USBHub Mewakili karakteristik manajemen hub USB.
Kelas Perangkat Jaringan
Subkategori Perangkat Jaringan mengelompokkan kelas-kelas yang mewakili pengontrol antarmuka jaringan, konfigurasinya, dan pengaturannya.
Deskripsi Kelas
Win32_NetworkAdapter Merupakan adaptor jaringan pada sistem Windows.
Win32_NetworkAdapterConfiguration Mewakili atribut dan perilaku adaptor jaringan Kelas tidak dijamin akan didukung setelah ratifikasi spesifikasi jaringan CIM Gugus Tugas Manajemen Terdistribusi (DMTF).
Win32_NetworkAdapterSetting Berhubungan dengan adaptor jaringan dan pengaturan konfigurasinya.
Kelas Kekuatan
Subkategori Daya mengelompokkan kelas yang mewakili pasokan daya, baterai, dan peristiwa yang terkait dengan perangkat ini.
Deskripsi Kelas
Win32_AssociatedBattery Menghubungkan perangkat logis dan baterai yang digunakannya.
Win32_Battery Merupakan baterai yang terhubung ke sistem komputer.
Win32_CurrentProbe Merupakan properti dari sensor pemantauan saat ini (ammeter).
Win32_PortableBattery Mewakili properti baterai portabel, seperti yang digunakan untuk komputer notebook.
Win32_PowerManagementEvent Merupakan peristiwa manajemen daya yang dihasilkan dari perubahan status daya.
Win32_UninterruptiblePowerSupply Mewakili kemampuan dan kapasitas manajemen catu daya tak terputus (UPS).
Win32_VoltageProbe Merupakan properti dari sensor tegangan (voltmeter elektronik).
Kelas Percetakan
Subkategori Pencetakan mengelompokkan kelas-kelas yang mewakili printer, konfigurasi printer, dan pekerjaan pencetakan.
Deskripsi Kelas
Win32_DriverForDevice Menghubungkan printer dengan driver printer.
Win32_Printer Merupakan perangkat yang terhubung ke sistem komputer Windows yang mampu mereproduksi gambar visual pada suatu media.
Win32_PrinterConfiguration Mendefinisikan konfigurasi untuk perangkat printer.
Win32_PrinterController Menghubungkan printer dan perangkat lokal yang terhubung dengan printer.
Win32_PrinterDriver Mewakili driver untuk instance Win32_Printer.
Win32_PrinterDriverDll Menghubungkan printer lokal dan file drivernya (bukan driver itu sendiri).
Win32_PrinterSetting Berhubungan dengan printer dan pengaturan konfigurasinya.
Win32_PrintJob Merupakan pekerjaan pencetakan yang dihasilkan oleh aplikasi Windows.
Win32_TCPIPPrinterPort Merupakan titik akses layanan TCP/IP.
Kelas Teleponi
Subkategori Teleponi mengelompokkan kelas-kelas yang mewakili perangkat modem telepon lama dan koneksi serial terkait.
Deskripsi Kelas
Win32_POTSModem Mewakili layanan dan karakteristik modem Plain Old Telephone Service (POTS) pada sistem Windows.
Win32_POTSModemToSerialPort Menghubungkan modem dan port serial yang digunakan modem.
Kelas Video dan Monitor
Subkategori Video dan Monitor mengelompokkan kelas yang mewakili monitor, kartu video, dan pengaturan terkaitnya.
Deskripsi Kelas
Win32_DesktopMonitor Merupakan jenis monitor atau perangkat tampilan yang terpasang pada sistem komputer.
Win32_DisplayConfiguration Mewakili informasi konfigurasi untuk perangkat tampilan pada sistem Windows. Kelas ini sudah usang. Sebagai pengganti kelas ini, gunakan properti di kelas Win32_VideoController, Win32_DesktopMonitor, dan CIM_VideoControllerResolution.
Win32_DisplayControllerConfiguration Mewakili informasi konfigurasi adaptor video dari sistem Windows. Kelas ini sudah usang. Sebagai pengganti kelas ini, gunakan properti di kelas Win32_VideoController, Win32_DesktopMonitor, dan CIM_VideoControllerResolution.
Win32_VideoConfiguration Kelas ini telah dihilangkan dari Windows XP dan kemudian; upaya untuk menggunakannya akan menghasilkan kesalahan fatal. Sebagai ganti kelas ini, gunakan properti yang terdapat dalam kelas Win32_VideoController, Win32_DesktopMonitor, dan CIM_VideoControllerResolution.
Win32_VideoController Mewakili kemampuan dan kapasitas manajemen pengontrol video pada sistem komputer Windows.
Win32_VideoSettings Berhubungan dengan pengontrol video dan pengaturan video yang dapat diterapkan padanya.
Setiap kelas memiliki struktur data yang sesuai seperti
kartu grafis
kelas Win32_VideoController : CIM_PCVideoController
{
uint16 AkseleratorKemampuan[];
kompatibilitas adaptor string;
stringAdapterDACType;
uint32 AdaptorRAM;
uint16 Ketersediaan;
string Deskripsi Kemampuan[];
string Keterangan;
uint32 ColorTableEntries;
uint32 ConfigManagerErrorCode;
boolean ConfigManagerUserConfig;
string NamaKelas Penciptaan;
uint32 CurrentBitsPerPixel;
uint32 Resolusi Horisontal Saat Ini;
uint64 CurrentNumberOfColors;
uint32 CurrentNumberOfColumns;
uint32 CurrentNumberOfRows;
uint32 CurrentRefreshRate;
uint16 Mode Pemindaian Saat Ini;
uint32 Resolusi Vertikal Saat Ini;
deskripsi string;
string ID Perangkat;
uint32 PerangkatSpesifikPena;
uint32 Tipe Dither;
tanggal waktu Tanggal Pengemudi;
string Versi Pengemudi;
boolean Kesalahan Dihapus;
string Deskripsi Kesalahan;
uint32 ICMIntent;
metode ICM uint32;
string Nama File Inf;
string InfBagian;
tanggal waktu Tanggal Pemasangan;
string InstalledDisplayDrivers;
uint32 LastErrorCode;
uint32 MaxMemory Didukung;
uint32 MaxNumberControlled;
uint32 MaxRefreshRate;
uint32 MinRefreshRate;
boolean Monokrom;
string Nama;
uint16 JumlahPesawat Warna;
uint32 JumlahHalaman Video;
string PNPDeviceID;
uint16 Kemampuan Manajemen Daya[];
boolean PowerManagement Didukung;
Protokol uint16 Didukung;
uint32 Entri Palet Sistem Cadangan;
uint32 SpesifikasiVersi;
status tali;
uint16 StatusInfo;
string NamaKelas SystemCreation;
string Nama Sistem;
uint32 SystemPaletteEntries;
tanggalwaktu TimeOfLastReset;
uint16 VideoArsitektur;
uint16 VideoMemoryType;
uint16 Mode Video;
string VideoModeDeskripsi;
rangkaian Prosesor Video;
};
Kartu suara, dll.
kelas Win32_SoundDevice : CIM_LogicalDevice
{
uint16 Ketersediaan;
string Keterangan;
uint32 ConfigManagerErrorCode;
boolean ConfigManagerUserConfig;
string NamaKelas Penciptaan;
deskripsi string;
string ID Perangkat;
uint16 DMABufferSize;
boolean Kesalahan Dihapus;
string Deskripsi Kesalahan;
tanggal waktu Tanggal Pemasangan;
uint32 LastErrorCode;
Produsen tali;
uint32 MPU401Alamat;
string Nama;
string PNPDeviceID;
uint16 Kemampuan Manajemen Daya[];
boolean PowerManagement Didukung;
string Nama Produk;
status tali;
uint16 StatusInfo;
string NamaKelas SystemCreation;
string Nama Sistem;
};
kelas Win32_PrintJob : CIM_Job
{
string Keterangan;
string Tipe Data;
deskripsi string;
string Dokumen;
string Nama Pengemudi;
tanggalwaktu Waktu Berlalu;
string HostPrintQueue;
tanggal waktu Tanggal Pemasangan;
uint32 Id Pekerjaan;
string Status Pekerjaan;
string Nama;
string Beritahu;
pemilik string;
uint32 HalamanDicetak;
Parameter string;
string Prosesor Cetak;
uint32 Prioritas;
uint32 Ukuran;
tanggalwaktu Waktu Mulai;
status tali;
uint32 StatusMask;
tanggalwaktu WaktuDikirim;
uint32 Total Halaman;
tanggalwaktu HinggaWaktu;
};
menyukai
Setel wmiObjSet = GetObject(winmgmts:{impersonationLevel=impersonate} _).
InstancesOf(Win32_PrintJob)
Anda bisa mendapatkan informasi seperti daftar tugas pencetakan
Untuk VB, API sebagian besar digunakan untuk memperoleh informasi perangkat keras dan perangkat lunak sistem. Sekarang kita dapat menggunakan WMI untuk mencapai tujuan kita dengan cepat, misalnya, mendapatkan informasi driver/kartu grafis/bersama, dll.