rmmagent/agent/software/software_windows_amd64.go
2022-06-17 16:45:28 -07:00

33 lines
878 B
Go

package software
import (
"fmt"
"github.com/amidaware/rmmagent/agent/utils"
wapi "github.com/iamacarpet/go-win64api"
trmm "github.com/wh1te909/trmm-shared"
)
func GetInstalledSoftware() []trmm.WinSoftwareList {
ret := make([]trmm.WinSoftwareList, 0)
sw, err := wapi.InstalledSoftwareList()
if err != nil {
return ret
}
for _, s := range sw {
t := s.InstallDate
ret = append(ret, trmm.WinSoftwareList{
Name: utils.CleanString(s.Name()),
Version: utils.CleanString(s.Version()),
Publisher: utils.CleanString(s.Publisher),
InstallDate: fmt.Sprintf("%02d-%d-%02d", t.Year(), t.Month(), t.Day()),
Size: utils.ByteCountSI(s.EstimatedSize * 1024),
Source: utils.CleanString(s.InstallSource),
Location: utils.CleanString(s.InstallLocation),
Uninstall: utils.CleanString(s.UninstallString),
})
}
return ret
}