|
0 / 0 / 0
Регистрация: 25.04.2016
Сообщений: 9
|
|
X86 или x64 под Windows 10/x6427.04.2016, 09:39. Показов 9545. Ответов 9
Метки нет (Все метки)
Только начинаю разбираться с написанием драйверов и как обычно уже миллион вопросов. Установлена Windows 10 x64/VS2015/WDK10.
Такие вопросы по совместимости: - возможно ли установить x86 драйвер на Windows 64-bit систему или драйвер под Windows64 должен быть ообязательно скомпилирован как x64 проект? - можно ли настроить дополнительные права для драйверов в процессе компиляции, как например для приложений - работа от имени администратора или от имени пользователя? - есть ли разграничение среды, для совместимости 32-битных драйверов на 64-битных системах как для приложений, когда приходится использовать функции типа Wow64DisableWow64FsRedirection? Дело в том, что есть проект, скомпилированный как x64, устанавливаю его с правами администратора с помощью "devcon.exe install" на Windows 10/64. Драйвер устанавливается, работает, но только в среде Администратора. От обычного пользователя если к нему обратиться - не работает. Или это он работает в 64-битной среде, а когда к нему обращаются 32-битные приложения - он с ними не работает? Нужно ли мне в данном случае перекомпилировать этот драйвер как x86 и устанавливать в каком-то специальном режиме для совместимости?
0
|
|
| 27.04.2016, 09:39 | |
|
Ответы с готовыми решениями:
9
Драйвер WinXP x86 поправить под Win7 x64 Переделка драйвера под Windows 10 x64 Портирование x86 драйвера USB на x64 |
|
Ушел с форума
|
|||||||
| 27.04.2016, 11:25 | |||||||
|
Например, у них нет "своего" адресного пространства, они практически всегда работают или в контексте системы, или в контексте процесса, который вызвал конкретный обработчик. Поэтому понятие "запуск драйвера от имени администратора" бессмысленно. Так что в этом плане меньше путаницы. которые позволят открывать их только определенным пользователям или группам. Возможно, это как раз такой случай. 32-битное приложение, а не 64-битное, и выдать ошибку. Как я уже писал выше, они всегда "правильной" разрядности, это во-первых, а во-вторых, никакие режимы совместимости на драйверы не распостраняются, это работает только для обычных приложений в user mode.
1
|
|||||||
|
0 / 0 / 0
Регистрация: 25.04.2016
Сообщений: 9
|
||
| 27.04.2016, 12:11 [ТС] | ||
0
|
||
|
Ушел с форума
|
|||
| 27.04.2016, 12:15 | |||
|
эта утилита не подписывает драйвер, она просто генерирует каталог безопасности (.cat) - обычный файл, в котором хранятся хэши файлов из пакета драйвера.
0
|
|||
|
0 / 0 / 0
Регистрация: 25.04.2016
Сообщений: 9
|
|
| 27.04.2016, 12:41 [ТС] | |
|
Но ведь в Inf2Cat.exe нужно перечислить ОСи с которыми совместим драйвер? Это ни на что не влияет, только на описание драйвера? Если я задам в Inf2Cat.exe только XP_X86, смогу ли я такой драйвер установить под Windows 10 x64?
0
|
|
|
Ушел с форума
|
|||
| 27.04.2016, 13:57 | |||
|
того, как он написан и скомпилирован. Inf2Cat тут никаким боком вообще, он лишь проверяет синтаксис INF-файла и генерирует по нему CAT-файл.
0
|
|||
|
0 / 0 / 0
Регистрация: 25.04.2016
Сообщений: 9
|
|
| 27.04.2016, 18:37 [ТС] | |
|
А где можно подробнее почитать про эти особые разрешения и как они задаются? Не хочется сдаваться - драйвер реально работает, но только в среде Администратора. Как-то нужно заставить его работать для пользователя.
0
|
|
|
Ушел с форума
|
|
| 27.04.2016, 18:51 | |
|
Сначала нужно разобраться, что именно "не работает".
Не открывается какое-то устройство или коммуникационный порт или не расшаривается общая память или при отправке пакета ввода-вывода возвращается ошибка и т.д. И уже от полученных данных отталкиваться. Если исходников драйвера нет - тогда все очень плохо и шансов на успех очень мало.
0
|
|
|
0 / 0 / 0
Регистрация: 25.04.2016
Сообщений: 9
|
|
| 27.04.2016, 20:50 [ТС] | |
|
Пытаюсь хоть немного разобраться с драйверами. У меня есть исходники. Это исходники из примера Майкрософт для виртуального RAMDisk. У меня получилось его скомпилировать и запустить под Windows 10 x64. Он устанавливается в систему и виден в Device Manager как нормально работающий. После установки появляется виртуальный диск R:. Если открывать его в Total Commander, то диск виден, но размер его 0 и пишет невозможно открыть диск. Если Total Commander открыть от имени администратора, то диск виден и полностью рабочий - на него можно писать файлы и удалять. Как его можно заставить работать для пользователя?
0
|
|
|
Ушел с форума
|
|||||||
| 27.04.2016, 21:02 | |||||||
|
Фреймворк KMDF для всех именованных device-объектов устанавливает
специальный дескриптор безопасности, который разрешает открывать их только членам группы "Администраторы" и системе. Об этом написано, например, здесь: Controlling Device Access in KMDF Drivers https://msdn.microsoft.com/win... df-drivers
вызвать WdfDeviceInitAssignSDDLString, задав подходящую SDDL-строку, например такую:
Controlling Device Access https://msdn.microsoft.com/ru-... s.85).aspx WdfDeviceInitAssignSDDLString method https://msdn.microsoft.com/lib... e/ff546035 SDDL for Device Objects https://msdn.microsoft.com/lib... e/ff563667 Проблема обсуждалась здесь: Need Windows 7 RamDisk Driver Assistance http://osronline.com/showThread.CFM?link=219449
1
|
|||||||
| 27.04.2016, 21:02 | |
|
Помогаю со студенческими работами здесь
10
Нужен пример простейшего драйвера на C/C++. Visual Studio 2008/новее. Win 8 x64, можно и XP x86 (а лучше оба) Переписать драйвер usb midi контроллера под x64 Возможно ли собрать усб-драйвер под Win7 x64 в DriverStudio 3.2?
Загрузка драйвера в windows 7 x64 Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд.
Даже если у вас. . .
|
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает
монорепозиторий в котором находятся все исходники.
При создании нового решения, мы просто добавляем нужные проекты
и имеем. . .
|
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение:
В этой книге («Подход, основанный на вариантах использования») Ивар утверждает,
что архитектура программного обеспечения — это
структуры,. . .
|
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога
Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
|
|
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip
На первой гифке отладочные линии отключены, а на второй включены:. . .
|
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем.
. . .
|
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
|
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
|