Rumah > pembangunan bahagian belakang > Golang > Bagaimanakah Saya Boleh Menyoal WMI daripada Go dengan Mudah?

Bagaimanakah Saya Boleh Menyoal WMI daripada Go dengan Mudah?

Mary-Kate Olsen
Lepaskan: 2024-11-28 18:38:11
asal
312 orang telah melayarinya

How Can I Easily Query WMI from Go?

Mencari WMI daripada Go

Untuk melaksanakan pertanyaan WMI daripada Go, menggunakan panggilan DLL adalah boleh dilakukan. Walau bagaimanapun, menavigasi kerumitan API Windows berasaskan COM boleh menjadi menakutkan. Nasib baik, terdapat penyelesaian alternatif yang menyediakan pendekatan yang lebih mudah.

Satu penyelesaian yang disyorkan ialah memanfaatkan repositori GitHub oleh StackExchange/wmi. Pakej ini merangkumi teknik yang digariskan dalam jawapan yang diterima, menawarkan antara muka yang mudah untuk pertanyaan WMI.

Menggunakan Pakej StackExchange/wmi

Berikut ialah coretan kod yang menunjukkan cara untuk menggunakan pakej StackExchange/wmi:

package main

import (
        "context"
        "fmt"
        "log"

        "github.com/StackExchange/wmi"
)

func main() {
        query := wmi.CreateQuery(&wmi.Query{
                Namespace:  "root\cimv2",
                Query:      "SELECT * FROM Win32_Process",
                Projection: []string{"Caption", "ProcessId"},
        })
        processes, err := query.Execute(context.Background())
        if err != nil {
                log.Fatal(err)
        }
        fmt.Printf("%-5s%-20v", "PID", "Name")
        fmt.Println()
        for _, p := range processes {
                fmt.Printf("%-5v%-20v\n", p.Properties["ProcessId"].Value.Value().(uint32), p.Properties["Caption"].Value.Value().(string))
        }
}
Salin selepas log masuk

Contoh ini akan dapatkan maklumat tentang proses yang sedang berjalan, termasuk ID dan nama prosesnya. Pakej StackExchange/wmi mengendalikan kerumitan COM dan WMI, memudahkan proses pertanyaan untuk pembangun Go.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menyoal WMI daripada Go dengan Mudah?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan