реклама на сайте
подробности

 
 
2 страниц V  < 1 2  
Reply to this topicStart new topic
> Проблема CyUSB.sys и 64-х битных Windows
pergunt
сообщение Jan 28 2014, 07:16
Сообщение #16


Частый гость
**

Группа: Свой
Сообщений: 165
Регистрация: 21-10-04
Пользователь №: 936



to Konst777
Относительно WinUSB.inf и WinUsb.sys :
Правильно я понял, что я должен скорректировать (добавить) в файл WinUSB.inf , находящийся в дирректории с:\Windows\inf\
строки касающиеся моего устройства, т.е. :

[Version]
Signature = "$Windows NT$"
Class = USBDevice
ClassGUID = {88BAE032-5A81-49f0-BC3D-A4FF138216D6}
Provider = %ManufacturerName%
CatalogFile = WinUSBInstallation.cat
DriverVer=09/04/2012,13.54.20.543

; ========== Manufacturer/Models sections ===========

[Manufacturer]
%ManufacturerName% = Standard,NTamd64

[Standard.NTamd64]
%DeviceName% =USB_Install, USB\VID_0547&PID_1002

; ========== Class definition ===========

[ClassInstall32]
AddReg = ClassInstall_AddReg

[ClassInstall_AddReg]
HKR,,,,%ClassName%
HKR,,NoInstallClass,,1
HKR,,IconPath,%REG_MULTI_SZ%,"%systemroot%\system32\setupapi.dll,-20"
HKR,,LowerLogoVersion,,5.2

; =================== Installation ===================

[USB_Install]
Include = winusb.inf
Needs = WINUSB.NT

[USB_Install.Services]
Include =winusb.inf
Needs = WINUSB.NT.Services

[USB_Install.HW]
AddReg=Dev_AddReg

[Dev_AddReg]
HKR,,DeviceInterfaceGUIDs,0x10000,"{9f543223-cede-4fa3-b376-a25ce9a30e74}"

; [DestinationDirs]
; If your INF needs to copy files, you must not use the DefaultDestDir directive here.
; You must explicitly reference all file-list-section names in this section.

; =================== Strings ===================

[Strings]
ManufacturerName=""
ClassName="Universal Serial Bus devices"
DeviceName="My USB"
REG_MULTI_SZ = 0x00010000

Посмотрите, пожалуйста, этих изменений достаточно?

2. Этот inf файл я корректирую прямо в дирректории с:\Windows\inf\ ?
или нужно поместить его в свою дирректорию?

3. WinUsb.sys файл возьмется автоматически родной из Windows или его тоже нужно создавать?
Go to the top of the page
 
+Quote Post
Konst_777
сообщение Jan 28 2014, 09:45
Сообщение #17


Знающий
****

Группа: Свой
Сообщений: 549
Регистрация: 1-06-05
Пользователь №: 5 644



Цитата(dxp @ Jan 28 2014, 10:32) *
Этот приём не работает после какого-то там обновления. sad.gif Тоже использовали, а потом перестало работать...

Да ну, а как же разработчики драйверов? Теперь все поголовно обязаны платить Certification Authorities?
Попробовал использовать драйвер CyUSB (ver. 3.4), который я когда-то подписал цифровой подписью для тестирования драйверов, под Windows 8.1 x64. Все работает wink.gif

Цитата(dxp @ Jan 28 2014, 10:32) *
...В итоге, накопали некий скрипт,... Так и живём.

Ну, так выложите скрипт. Осчастливьте народ.

Цитата(pergunt @ Jan 28 2014, 11:16) *
to Konst777
Относительно WinUSB.inf и WinUsb.sys :
Правильно я понял, что я должен скорректировать (добавить) в файл WinUSB.inf , находящийся в дирректории с:\Windows\inf\...

Не нужно трогать WinUSB.inf и WinUsb.sys. Вообще. В этом и преимущество. To identify a USB device as a WinUSB device, the device firmware must have these Microsoft OS Descriptors. Посмотрите пример, который я выложил в теме Подскажите по winUSB. И еще, очень полезно почитать USB Stack and Microsoft OS Descriptors.
Go to the top of the page
 
+Quote Post
pergunt
сообщение Jan 28 2014, 10:27
Сообщение #18


Частый гость
**

Группа: Свой
Сообщений: 165
Регистрация: 21-10-04
Пользователь №: 936



Прошу прощения, если задаю вопросы про очевидное.
Я читаю WinUSB (Winusb.sys) Installation ( http://msdn.microsoft.com/en-us/library/wi...5%29.aspx#howto )
Дохожу до пункта How to create a driver package that installs Winusb.sys :

1. WinUSB co-installer (Winusbcoinstaller.dll) - беру соответствующее dll - WinUsbCoInstaller.dll
2. KMDF co-installer (WdfcoinstallerXXX.dll) - беру wdfcoinstaller01009.dll
3. An .inf file that installs Winusb.sys as the device's function driver. For more information, see Writing an .Inf File for WinUSB Installation. - создаю myusb.inf файл со строками приведенными мной ранее.
4. A signed catalog file for the package. This file is required to install WinUSB on x64 versions of Windows Vista.
- А вот с этим пунктом непонятно, где взять проверенный каталог файл для меня, откуда?!

Go to the top of the page
 
+Quote Post
dxp
сообщение Jan 28 2014, 11:22
Сообщение #19


Adept
******

Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343



QUOTE (Konst_777 @ Jan 28 2014, 16:45) *
Да ну, а как же разработчики драйверов? Теперь все поголовно обязаны платить Certification Authorities?
Попробовал использовать драйвер CyUSB (ver. 3.4), который я когда-то подписал цифровой подписью для тестирования драйверов, под Windows 8.1 x64. Все работает wink.gif

Не берусь судить, не знаю тему досконально. Пробовали разные способы, в т.ч. и подписыванием, оно кончалось BSOD'ами.

QUOTE (Konst_777 @ Jan 28 2014, 16:45) *
Ну, так выложите скрипт. Осчастливьте народ.

Он легко гуглится. Впрочем, мне не жалко. sm.gif
Прикрепленный файл  srdp.zip ( 433.55 килобайт ) Кол-во скачиваний: 184


--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
Go to the top of the page
 
+Quote Post
SM
сообщение Jan 28 2014, 11:38
Сообщение #20


Гуру
******

Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881



Цитата(pergunt @ Jan 28 2014, 14:27) *
-[color="#0000FF"] А вот с этим пунктом непонятно, где взять проверенный каталог файл для меня, откуда?!


1) сходить туда и заплатить бабла. https://www.globalsign.com/ru-ru/podpis-kod...thenticode.html
2) получить сертификат
3) выполнить для Вашего INF следующие команды (в любой среде WDK)

Код
c:\WinDDK\8.0\bin\x86\inf2cat /driver:<path_to_driver> /os:2000,XP_X86,Server2003_X86,Vista_X86,XP_X64,Server2003_X64,Vista_X64,Server2
003_IA64,7_X64,7_X86,Server2008_X64,Server2008_IA64,Server2008_X86,Server2008R2_
X64,Server2008R2_IA64,8_X86,8_X64,Server8_X64

signtool sign /v /s my /n <certificate_name> /ac cert/mscv-gs.pem /t http://timestamp.globalsign.com/scripts/timstamp.dll <path_to_driver>\<drivername>.cat


соотв. <path_to_driver> <certificate_name> и <drivername> подставить какие надо

Все, наслаждаться драйвером. Платить денег надо только за тот срок, когда требуется подписывание дров. Пользоваться потом подписанными можно неограниченно.

ну и winddk 8 нужен чтобы в CAT файл прописать вин8, а signtool все равно какой. я собираю дрова и под 8, и под 8.1 старым добрым WDK 7600, а из 8-го взял ТОЛЬКО inf2cat и ничего более.

UPD:

cert/mscv-gs.pem - этого надо скачать оттуда - http://msdn.microsoft.com/en-us/library/wi...v=vs.85%29.aspx , там же полный список всех тех, у кого можно покупать сертификат, чтобы он подошел для KMCS
Go to the top of the page
 
+Quote Post
pergunt
сообщение Jan 28 2014, 11:49
Сообщение #21


Частый гость
**

Группа: Свой
Сообщений: 165
Регистрация: 21-10-04
Пользователь №: 936



QUOTE (SM @ Jan 28 2014, 15:38) *
1) сходить туда и заплатить бабла. https://www.globalsign.com/ru-ru/podpis-kod...thenticode.html

Тогда я совсем запутался - в чем преимущество применения WinUsb.sys вместо CyUsb.sys (если я все равно должен заплатить )?
Go to the top of the page
 
+Quote Post
SM
сообщение Jan 28 2014, 12:58
Сообщение #22


Гуру
******

Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881



Суть такова - если Вам надо изменить хоть одну букву в INF файле, или написать свой - тогда надо платить за сертификат, какой бы драйвер не был.

Если Вас устраивает готовый фирменный INF, подписанный кем то, и вы подделываетесь под VID/PID (или стандартный класс), указанный в нем, то тогда (и только тогда) Вам сертификат покупать не надо.
Go to the top of the page
 
+Quote Post
Konst_777
сообщение Jan 28 2014, 13:31
Сообщение #23


Знающий
****

Группа: Свой
Сообщений: 549
Регистрация: 1-06-05
Пользователь №: 5 644



Цитата(pergunt @ Jan 28 2014, 14:49) *
Тогда я совсем запутался - в чем преимущество применения WinUsb.sys вместо CyUsb.sys (если я все равно должен заплатить )?

Вы слишком углубляетесь в прошлое WinUSB. В самом начале WinUSB был просто еще одним универсальным драйвером для устройств USB. Так же как и CyUsb.sys. В настоящее время, преимущество WinUsb.sys в том, что не нужно вносить изменения в WinUsb.inf и подписывать драйвер. Попробуйте вначале прочитать WCID Devices. Там описана история развития WinUSB и требования к firmware для устройств USB, чтобы разработчику устройства USB не нужно было подписывать драйвер (модификацию WinUsb.inf), а пользователю не нужно было устанавливать драйвер. В теме USB Stack and Microsoft OS Descriptors дан ответ на вопрос: "Почему Windows не подключает мое устройство USB автоматически, хотя мое firmware отвечает на запросы MS OS Descriptors?". В этой теме есть ссылка на тему WCID Devices.

Цитата(SM @ Jan 28 2014, 15:58) *
...и вы подделываетесь под VID/PID (или стандартный класс), указанный в нем, то тогда (и только тогда) Вам сертификат покупать не надо.

При использовании WinUSB firmware может иметь произвольный VID/PID. Важно, чтобы firmware отвечало на запросы MS OS Descriptors.
Go to the top of the page
 
+Quote Post
vladimir_orl
сообщение Dec 10 2014, 11:44
Сообщение #24


Частый гость
**

Группа: Участник
Сообщений: 191
Регистрация: 18-09-12
Из: Орёл
Пользователь №: 73 591



Присоединяюсь. Работаем с FTDI. На 32-х битных системах всё отлично работает. На 64-х битной восьмёрке тоже хорошо.

А на 64-х битной 7-ке постоянно просит цифровую подпись и админские права. Ставим. Стоит просто перезагрузить - и опять "неизвестное устройство". Иногда даже ПК не с админскими правми загружаться не хочет.
Go to the top of the page
 
+Quote Post
vladimir_orl
сообщение Dec 10 2014, 13:09
Сообщение #25


Частый гость
**

Группа: Участник
Сообщений: 191
Регистрация: 18-09-12
Из: Орёл
Пользователь №: 73 591



Причём на i-7 всё отлично работает...
Go to the top of the page
 
+Quote Post
rfm389
сообщение Dec 23 2015, 15:55
Сообщение #26


Участник
*

Группа: Участник
Сообщений: 53
Регистрация: 2-02-13
Пользователь №: 75 460



А как дела на 8-ке?
Установка неподписанных драйверов в Windows 8.1
http://www.windxp.com.ru/win8/article_44.htm
Кто-нибудь пробовал?
В 7-ке подобная функция заявлена, но не работает.
Go to the top of the page
 
+Quote Post

2 страниц V  < 1 2
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 3rd August 2025 - 19:11
Рейтинг@Mail.ru


Страница сгенерированна за 0.01459 секунд с 7
ELECTRONIX ©2004-2016