Skip to content
/ go-wpd Public
forked from rlj1202/go-wpd

Window Portable Device binding for Go language.

License

Notifications You must be signed in to change notification settings

grassto/go-wpd

 
 

Repository files navigation

go-wpd

GoDoc Go Report Card Build status

Window Portable Device binding for Go language.

Examples

Enumerate devices

gowpd.Initialize()

mng, err := gowpd.CreatePortableDeviceManager()
if err != nil {
    panic(err)
}

deviceIDs, err := mng.GetDevices()
if err != nil {
    panic(err)
}

for i, deviceID := range deviceIDs {
    friendlyName, err := mng.GetDeviceFriendlyName(deviceID)
    if err != nil {
        panic(err)
    }
    manufacturer, err := mng.GetDeviceManufacturer(deviceID)
    if err != nil {
        panic(err)
    }
    description, err := mng.GetDeviceDescription(deviceID)
    if err != nil {
        panic(err)
    }

    log.Printf("[%d]:\n", i)
    log.Printf("\tName:         %s\n", friendlyName)
    log.Printf("\tManufacturer: %s\n", manufacturer)
    log.Printf("\tDescription:  %s\n", description)

    gowpd.FreeDeviceID(deviceID)
}

gowpd.Uninitialize()

About

Window Portable Device binding for Go language.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 69.2%
  • C++ 16.5%
  • C 14.3%