github.com/jaypipes/ghw@v0.21.1/pkg/baseboard/baseboard_windows.go (about) 1 // Use and distribution licensed under the Apache license version 2. 2 // 3 // See the COPYING file in the root project directory for full text. 4 // 5 6 package baseboard 7 8 import ( 9 "github.com/yusufpapurcu/wmi" 10 ) 11 12 const wqlBaseboard = "SELECT Manufacturer, SerialNumber, Tag, Version, Product FROM Win32_BaseBoard" 13 14 type win32Baseboard struct { 15 Manufacturer *string 16 SerialNumber *string 17 Tag *string 18 Version *string 19 Product *string 20 } 21 22 func (i *Info) load() error { 23 // Getting data from WMI 24 var win32BaseboardDescriptions []win32Baseboard 25 if err := wmi.Query(wqlBaseboard, &win32BaseboardDescriptions); err != nil { 26 return err 27 } 28 if len(win32BaseboardDescriptions) > 0 { 29 i.AssetTag = *win32BaseboardDescriptions[0].Tag 30 i.SerialNumber = *win32BaseboardDescriptions[0].SerialNumber 31 i.Vendor = *win32BaseboardDescriptions[0].Manufacturer 32 i.Version = *win32BaseboardDescriptions[0].Version 33 i.Product = *win32BaseboardDescriptions[0].Product 34 } 35 36 return nil 37 }