как отправить USB Control Transfer в виндовс

Тема в разделе "WASM.WIN32", создана пользователем carver, 21 фев 2019.

  1. carver

    carver New Member

    Публикаций:
    0
    Регистрация:
    25 авг 2008
    Сообщения:
    4
    Адрес:
    науру
    написал простенький скриптик, на питоне с pyusb+libusb,

    dev = usb.core.find(idVendor=0x13FE, idProduct=0x5400)
    dev.set_configuration()
    dev.ctrl_transfer(0x80, 0x11, 0x5, 0, 0)

    себе - отлично, все работает,
    но с точки зрения кому-то еще переписать - не подходит ни питон,
    ни то что нужно фильтр для libusb на всех компах ставить и настраивать.

    устройство с родными драйверами, не HID, просто флешка.

    подскажите плиз, как это все на нативном win сделать ?
    так и не смог нагуглить пример.

    заранее благодарен.
     
  2. f13nd

    f13nd Well-Known Member

    Публикаций:
    0
    Регистрация:
    22 июн 2009
    Сообщения:
    1.995
  3. carver

    carver New Member

    Публикаций:
    0
    Регистрация:
    25 авг 2008
    Сообщения:
    4
    Адрес:
    науру
    да, читал канешно это тоже, даже WDK8 для 2012 ставил,
    примеры смотрел, что-то пробовал. но не смог осилить,
    поэтому и спросил.
     
  4. f13nd

    f13nd Well-Known Member

    Публикаций:
    0
    Регистрация:
    22 июн 2009
    Сообщения:
    1.995
    Это все сводится к CreateFile и WinUsb_ControlTransfer. Сам интерфейс для CreateFile скорей всего находится через SetupDiGetClassDevs, SetupDiEnumDeviceInterfaces, SetupDiGetDeviceInterfaceDetail. Гугли примеры с этими функциями.
     
    carver нравится это.