![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#11 | |
Форумчанин
Регистрация: 26.03.2010
Сообщений: 538
|
![]() Цитата:
Единственный способ стать умнее - играть с более умным противником.
|
|
![]() |
![]() |
![]() |
#12 |
C/C++, Asm
Участник клуба
Регистрация: 02.03.2010
Сообщений: 1,323
|
![]()
насколько я понимаю IoCreateDevice, то до WinXP имя было обязательным для всех драйверов. сегодня имя в IoCreateDevice нужно только для BUS PDO, и только если есть потребность ограничинить драйвер при помощи DACL. также сегодня вся работа с драйвером должна реализовываться через интерфейс, который он предоставляет.
относительно вашей ситуации, то может быть это имя и сработает, хотя я сильно сомневаюсь. |
![]() |
![]() |
![]() |
#13 | ||
Форумчанин
Регистрация: 26.03.2010
Сообщений: 538
|
![]() Цитата:
![]() Вот вы упоминали о SetupDi.... Цитата:
Единственный способ стать умнее - играть с более умным противником.
|
||
![]() |
![]() |
![]() |
#14 |
C/C++, Asm
Участник клуба
Регистрация: 02.03.2010
Сообщений: 1,323
|
![]()
Да, тут уже было, про USB правда. Просто GUID нужно поменять на свои. и на выходе SetupDiGetDeviceInterfaceDetail (SP_DEVICE_INTERFACE_DETAIL_DATA) будет лежать нужный DevicePath.
Последний раз редактировалось f.hump; 26.06.2011 в 21:58. |
![]() |
![]() |
![]() |
#15 |
Форумчанин
Регистрация: 26.03.2010
Сообщений: 538
|
![]()
Спасибо.
Правильно ли я понимаю, что GUID для моего случая надо генерировать самому?
Единственный способ стать умнее - играть с более умным противником.
|
![]() |
![]() |
![]() |
#16 |
C/C++, Asm
Участник клуба
Регистрация: 02.03.2010
Сообщений: 1,323
|
![]()
в целом, для своего драйвера нужно сгенерить свой GUID, это тот же GUID, который стоит в IoRegisterDeviceInterface.
оффтоп: хочется думать, что я ничего не имею против WDM драйверов, но наверное я уже привык к WDF, и рекомендую тем кто пишет драйвера переходить на WDF. |
![]() |
![]() |
![]() |
#17 |
добрый няша
Старожил
Регистрация: 29.10.2006
Сообщений: 4,804
|
![]()
не знаю как и что делается в WDF, но у топикстартёра скорее всего WDM драйвер
Sam Gold, чтобы открыть что-то через CreateFile необходимо чтобы твой драйвер создал устройство через IoCreateDevice и создал на него символьную ссылку через IoCreateSymbolicLink, если этого в драйвере нет то и никакого устройство ты открыть не сможешь, и имя при открытии надо указывать именно такое которое было указано в функции IoCreateSymbolicLink в качестве символьной ссылки. и вообще перед тем как что-то делать необходимо хоть чуть чуть ознакомиться с теорией (рекомендую туториал от Four-F на WASM.RU). |
![]() |
![]() |
![]() |
#18 |
C/C++, Asm
Участник клуба
Регистрация: 02.03.2010
Сообщений: 1,323
|
![]()
на счет IoCreateSymbolicLink, опять таки, до WinXP - да, после WinXP - нет. Винда сама называет устройства, чтобы не случилось конфликта имен, и что самое интересное здесь, имя девайса, довольно часто, действительно от загрузки до перезагрузки.
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
CppWEbBrowser. Запрет на открытие нового окна, и открытие его в том же окне | Askar_g | Общие вопросы C/C++ | 4 | 25.06.2011 20:00 |
драйвера | technik_312 | Помощь студентам | 2 | 10.01.2010 15:57 |
блочные драйвера | valys361 | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 0 | 03.06.2009 22:55 |
Ошибка драйвера | Dimoney | Общие вопросы Delphi | 8 | 28.05.2008 11:26 |
как перехватить открытие чужого приложенияпытаюсь перехватить открытие любого приложе | rpy3uH | Win Api | 2 | 02.12.2006 12:12 |