Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: USB driver for Bulk transfer error code 10 :(  (Прочитано 9267 раз)
0 Пользователей и 2 Гостей смотрят эту тему.
dgritsay
Гость
« : 05-12-2008 13:45 » 

Здравствуйте!

  Помогите пожалуйста разобраться с проблемой в моем USB драйвере (Исходники и log файл в аттаче). Иходный код был сгенерен при помощи Compuware Driver Studio. Все отлично компилируется, но к сожалению не работает. Сдуя по логам - проблема в процедуре StartDevice при первой попытке прочитать дескриптор устройства. Попытка завершается ошибкой c00000bb - STATUS_NOT_SUPPORTED.. Подскажите - как бороться с этим?

* USBBulk.zip (39.11 Кб - загружено 1383 раз.)
Записан
dgritsay
Гость
« Ответ #1 : 05-12-2008 13:56 » 

да, забыл сказать - драйвер под WinXP
Записан
Ochkarik
Модератор

ru
Offline Offline
Пол: Мужской

« Ответ #2 : 06-12-2008 11:28 » 

у вас не драйвер шины. вы не должны обрабатывать IRP_MN_QUERY_LEGACY_BUS_INFORMATION

впрочем там обработчик такой же как по дефолту...
« Последнее редактирование: 06-12-2008 11:31 от Ochkarik » Записан

RTFM уже хоть раз наконец!  RTFM :[ ну или хотя бы STFW...
Ochkarik
Модератор

ru
Offline Offline
Пол: Мужской

« Ответ #3 : 06-12-2008 11:43 » 

увы,совсем нет времени разбираться(((
проверьте epDescriptor->wMaxPacketSize и epDescriptor->bEndpointAddress - правильно ли задаете?
и прикрепляю свой код (тоже нумеговский, генерил для FTDI - полностью не проверял, но он грузился, и даже что то читал)
эндпоинты другие, и без IoSetDeviceInterfaceState через симолические ссылки.

попробуйте сравнить.. сам бы глянул, но время..время(
отпишитесь тогда.
да, DS 3.2?
да! код под XP sp2 (а может быть sp1?) работал... как оно под вистой - не знаю!

* USB_FTDI.RAR (62.46 Кб - загружено 1041 раз.)
« Последнее редактирование: 06-12-2008 11:51 от Ochkarik » Записан

RTFM уже хоть раз наконец!  RTFM :[ ну или хотя бы STFW...
dgritsay
Гость
« Ответ #4 : 07-12-2008 10:39 » new

спасибо за ваш ответ.
да, Driver Studio 3.2.

wMaxPacketSize и bEndpointAddress как я понимаю драйвер студио определял в визарде сам. и вроде правильно.. Или их еще где то в коде
дефайнить нужно?
Спасибо за ваш пример - обязательно сравню...
Самое интересное - стандартный виндовый драйвер с устройством работает. Мой генеренный - нет. Жаль Так же я пытался брать пример из DDK - тоже самое Жаль исходиники свои сравнивал с DDKшными - в принципе все тоже самое, а не работает! ума не приложу в чем проблема Жаль
Записан
Ochkarik
Модератор

ru
Offline Offline
Пол: Мужской

« Ответ #5 : 07-12-2008 20:26 » 

wMaxPacketSize и bEndpointAddress зависят от устройства.
usb если не ошибаюсь поддерживает до 128 поинтов IN и 128 на OUT. но какие конкретно используются - зависит от устройства. с размером пакета наверное то же самое. опять же не помню - посмотрите в книге Агурова. впринципе наверное да. DS их при генерации определяет...
была утилитка... HHD кажется или как-то так... она вешала фильтр на готовый драйвер и позволяла сделать лог всех отосланных IRB пакетов. или как там они назывались... попробуйте ей промониторить.
Записан

RTFM уже хоть раз наконец!  RTFM :[ ну или хотя бы STFW...
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines