标签: pywinusb

Pywinusb:处理来自多个键盘的事件

我正在尝试处理来自多个 USB 键盘的事件,以便代码知道输入来自哪个键盘。该代码通过设备实例 ID 识别不同的键盘(它们都具有相同的产品和供应商 ID),但不识别用户输入的来源(它只是在它们之间切换)。

这对于 pywinusb 来说是可能的吗?我尝试使用事件处理程序但没有运气。

from time import sleep
from msvcrt import kbhit

import pywinusb.hid as hid

# feel free to test
target_vendor_id = 0xffff
target_product_id = 0x0035

def sample_handler(data):
    print("Raw data: {0}".format(data))

def getinput(data, id):
    print data
    print id
    if(id == "8&2754010&0&0000" and data == "09008708"):
        print "Success"
    else:
        print "Failed"

def raw_test():

   # example, handle the HidDeviceFilter().get_devices() result grouping items by parent ID
   all_hids = hid.HidDeviceFilter(vendor_id = target_vendor_id, product_id = target_product_id).get_devices()
   #print all_hids
   if …
Run Code Online (Sandbox Code Playgroud)

python pywinusb

5
推荐指数
1
解决办法
758
查看次数

如何使用 python / pywinusb 将隐藏数据发送到设备?

我正在尝试使用 pywinusb 将输出报告发送到 pic18f4550。该设备可以接收数据,我已经使用 C# 应用程序对其进行了测试,效果很好。另外,我可以使用 pywinusb 从设备读取数据就好了,但是我在尝试发送数据时遇到了问题。

这是我正在运行的代码:

from pywinusb import hid

filter = hid.HidDeviceFilter(vendor_id = 0x0777, product_id = 0x0077)
devices = filter.get_devices()

if devices:
    device = devices[0]
    print "success"

device.open()
out_report = device.find_output_reports()[0]

buffer= [0x00]*65
buffer[0]=0x0
buffer[1]=0x01
buffer[2]=0x00
buffer[3]=0x01

out_report.set_raw_data(buffer)
out_report.send()
dev.close()
Run Code Online (Sandbox Code Playgroud)

它产生这个错误:

success
Traceback (most recent call last):
  File "C:\Users\7User\Desktop\USB PIC18\out.py", line 24, in <module>
    out_report.send()
  File "build\bdist.win32\egg\pywinusb\hid\core.py", line 1451, in send
    self.__prepare_raw_data()
  File "build\bdist.win32\egg\pywinusb\hid\core.py", line 1406, in __prepare_raw_data
    byref(self.__raw_data), self.__raw_report_size) )
  File "build\bdist.win32\egg\pywinusb\hid\winapi.py", line 382, in …
Run Code Online (Sandbox Code Playgroud)

python usb hid pywinusb

2
推荐指数
1
解决办法
2万
查看次数

标签 统计

python ×2

pywinusb ×2

hid ×1

usb ×1