Contoh skrip yang ditampilkan dalam topik ini hanya mendapatkan data dari komputer lokal. Untuk informasi selengkapnya tentang cara menggunakan skrip untuk mendapatkan data dari komputer jarak jauh, lihat Menyambungkan ke WMI di Komputer Jarak Jauh.
Untuk menjalankan skrip
Prosedur berikut menjelaskan cara menjalankan skrip.
Salin kode dan simpan dalam file dengan ekstensi .vbs, seperti filename.vbs. Pastikan editor teks Anda tidak menambahkan ekstensi .txt ke file.
Buka jendela prompt perintah dan navigasikan ke direktori tempat Anda menyimpan file.
Ketik filename.vbs cscript pada prompt perintah.
Jika Anda tidak dapat mengakses log peristiwa, periksa untuk melihat apakah Anda menjalankan dari prompt perintah Elevated. Beberapa Log Peristiwa, seperti Log Peristiwa Keamanan, dapat dilindungi oleh Kontrol Akses Pengguna (UAC).
Catatan
Secara default, cscript menampilkan output skrip di jendela prompt perintah. Karena skrip WMI dapat menghasilkan output dalam jumlah besar, Anda mungkin ingin mengalihkan output ke file. Ketik filename.vbs > cscript outfile.txt pada prompt perintah untuk mengalihkan output skrip filename.vbs ke outfile.txt.
Tabel berikut ini mencantumkan contoh skrip yang dapat digunakan untuk mendapatkan berbagai jenis data dari komputer lokal.
Bagaimana Caranya...
Kelas atau metode WMI
... mengonversi tanggal dan waktu WMI ke tanggal dan waktu standar?
Set dtmInstallDate = CreateObject("WbemScripting.SWbemDateTime")
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set objOS = objWMIService.ExecQuery("Select * from Win32_OperatingSystem")
For Each strOS in objOS
dtmInstallDate.Value = strOS.InstallDate
Wscript.Echo dtmInstallDate.GetVarDate
Next
Atau minta kode Anda melakukan tugas secara manual.
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_TimeZone")
For Each objItem in colItems
Wscript.Echo "Description: " & objItem.Description
Wscript.Echo "Daylight Name: " & objItem.DaylightName
Wscript.Echo "Standard Name: " & objItem.StandardName
Wscript.Echo
Next
PowerShell
$Computer = "."
$timezone = Get-WMIObject -class Win32_TimeZone -ComputerName $computer
<# Display details #>
if ($computer -eq ".") {$computer = Hostname}
"Time zone information on computer `"{0}`"" -f $computer
"Time Zone Description : {0}" -f $timezone.Description
"Daylight Name : {0}" -f $timezone.DaylightName
"Standard Name : {0}" -f $timezone.StandardName
... memastikan bahwa "02/10/2000" ditafsirkan sebagai 2 Oktober 2000, bukan "10 Feb, 2000"?
Kelola tanggal dalam format DATETIME CIMdan gunakan metode SWbemDateTime, seperti GetVarDate untuk mengonversinya ke dan dari format FILETIME atau VT_Date. Karena format DATETIME independen lokal, Anda dapat menulis skrip yang berjalan di komputer apa pun.
Gunakan objek SWbemDateTime untuk mengonversinya ke tanggal dan waktu reguler. Lihat Format Tanggal dan Waktu untuk informasi selengkapnya tentang mengonversi tanggal dan waktu.
... mengonversi tanggalwaktu WMI ke nilai .NET DateTime?