如何使用golang获取USB设备的序列号?
如何使用golang获取USB设备的序列号 是否有任何示例代码如何使用golang获取USB设备的序列号?,go,usb,serial-number,Go,Usb,Serial Number,如何使用golang获取USB设备的序列号 是否有任何示例代码 任何知道的人 必须在golang中使用libusb的包装器(例如)。 但是这个包装器没有获取序列号的命令。 所以你必须实施它。libusb中执行此操作的命令是: C.libusb_get_string_descriptor_ascii Go软件包有一种方法,可用于获取USB设备的序列号 没有错误处理的示例 这对你有帮助吗,如果您使用的是unix/osx系统命令,则文档位于。我在获取github.com/gotmc/libusb时出
任何知道的人 必须在golang中使用libusb的包装器(例如)。 但是这个包装器没有获取序列号的命令。 所以你必须实施它。libusb中执行此操作的命令是:
C.libusb_get_string_descriptor_ascii
Go软件包有一种方法,可用于获取USB设备的序列号
没有错误处理的示例
这对你有帮助吗,如果您使用的是unix/osx系统命令,则文档位于。我在获取github.com/gotmc/libusb时出错bjbus@bjbus:~$go get github.com/gotmc/libusb#pkg config--cflags libusb-1.0 libusb-1.0 libusb-1.0 libusb-1.0 libusb-1.0。。。在PKG CONFIG搜索路径中找不到PKG_CONFIG_PATH环境变量包libusb-1.0。也许您应该将包含
libusb-1.0.pc'的目录添加到PKG_CONFIG_PATH环境变量中,找不到包'libusb-1.0'。。。pkg config:exit status 1
I retrygo-get-github.com/gotmc/libusb
afterapt-get-install-libusb-1.0-0-dev
。并收到消息:无法确定C.LIBUSB\u TRANSFER\u TYPE\u BULK\u STREAM的名称类型
@sope您是否也执行了sudo apt get install LIBUSB-1.0-0
?我不确定libusb-1.0-0-dev
是否安装了libusb-1.0-0
依赖项。libusb-1.0-0已默认安装在ubuntu 14.04中
package main
import (
"log"
"github.com/gotmc/libusb"
)
func main() {
ctx, _ := libusb.Init()
defer ctx.Exit()
devices, _ := ctx.GetDeviceList()
for _, device := range devices {
usbDeviceDescriptor, _ := device.GetDeviceDescriptor()
handle, _ := device.Open()
defer handle.Close()
snIndex := usbDeviceDescriptor.SerialNumberIndex
serialNumber, _ := handle.GetStringDescriptorASCII(snIndex)
log.Printf("Found S/N: %s", serialNumber)
}
}