Русский / Russian English / Английский

Сейчас на форуме: Adler, tusovaka, Lambda, Mishar_Hacker, dezmand07 (+3 невидимых)
 · Начало · Статистика · Регистрация · Поиск · ПРАВИЛА ФОРУМА · Язык · RSS ·

 eXeL@B —› Программирование —› Развертівание окружения для написания драйверов под Windows 10
Посл.ответ Сообщение

Ранг: 4.1 (гость)
Статус: Участник

Создано: 05 августа 2020 13:40 New!
Цитата · Личное сообщение · #1

Собственно, столкнулся с проблемой, что не могу написать простейший HelloWorld драйвер под десятку. Скачал последнюю VS и WDK, долго провозился с зависимостями и в итоге завис на том, что нужно отдельное устройство, на которое будет подгружаться драйвер. Мои вопросы:

1) Можно ли подгружать драйвера "на лету" , как модули ядра в линуксе , и прямо на той же операционке, где пишется драйвер ?
2) Я так понимаю, можно на виртуалке запустить образ десятки и подключить его к VS как целевую систему? Не подскажете какой-то гайд, как это сделать?
3) Есть ли способы написания , компиляции и тестирования драйверов под десятку без использования VS?
4) Какая есть литература по внутреннему устройству ядра виновз и туториалы по написанию драйверов, кроме майкрософтовских?



Ранг: 593.8 (!)
Статус: Модератор

Создано: 05 августа 2020 14:33 New!
Цитата · Личное сообщение · #2

1) можно, если это legacy driver (не wdm). найди в гугле какие-нибудь старые дрова, которые через drreg/wdreg регистрируются и исследуй вокруг. По сути там регистрируется сервис и дальше управляешь драйвером как сервисом.
2) можно, с виртуалки пробрасываешь ком-порт в виде пайпа. я испльзую такой батник для коннекта
Code:
  1. @echo off
  2. set _NT_SYMBOL_PATH=srv*C:\Symbols*http://msdl.microsoft.com/download/symbols;cache*c:\Symbols
  3. if not "%1" == "" goto l_pipe
  4.  
  5. start "" /"C:\WinDDK\7600.16385.1\Debuggers\windbg.exe" -k com:pipe,baud=115200,port=\\.\pipe\dbg,reconnect
  6. goto l_exit
  7.  
  8. :l_pipe
  9. start "" /B C:\WinDDK\7600.16385.1\Debuggers\windbg.exe" -k com:pipe,port=\\.\pipe\%1,reconnect
  10.  
  11. :l_exit


3) есть. обычный build из DDK
4) ищи старинную Walter Oney. Windows Driver Model 2nd. Ну может и поновее чего найдешь. Посмотри в ДДК семплы.

| Сообщение посчитали полезным: OneUser, Illuzion



Ранг: 73.1 (постоянный)
Статус: Участник

Создано: 05 августа 2020 14:40 · Поправил: morgot New!
Цитата · Личное сообщение · #3

OneUser пишет:
4) Какая есть литература по внутреннему устройству ядра виновз и туториалы по написанию драйверов, кроме майкрософтовских?

Советую --> эту книгу <--
Плюс в том, что автор пишет о разработке в последней (2019 студии), а не древние батники под хрюшу.
Минус - хз, я под ядро писал 2-3 хелловорлда.

| Сообщение посчитали полезным: OneUser, bartolomeo


Ранг: 4.1 (гость)
Статус: Участник

Создано: 05 августа 2020 15:01 New!
Цитата · Личное сообщение · #4

morgot пишет:
Советую --> эту книгу <--


Спасибо! То, что надо!



Ранг: 593.8 (!)
Статус: Модератор

Создано: 05 августа 2020 22:14 New!
Цитата · Личное сообщение · #5

Можно и загружать и выгружать. Не мели ерундой.



Ранг: 4.1 (гость)
Статус: Участник

Создано: 05 августа 2020 23:32 New!
Цитата · Личное сообщение · #6

difexacaw

difexacaw пишет:
Хеловорд ты не сможешь вывести


DebugView с тобой не согласен

Code:
  1. KernelHelloWorld: Driver Loaded. Hello, World!




Ранг: -5.1 (нарушитель)
Статус: Участник

Создано: 10 августа 2020 17:32 New!
Цитата · Личное сообщение · #7

r_e
а
https://sysprogs.com/legacy/virtualkd/
ещё актуален или не нужно больше?



Ранг: 593.8 (!)
Статус: Модератор

Создано: 11 августа 2020 08:51 New!
Цитата · Личное сообщение · #8

VirtualKD просто обертка. Я им давно не пользовался, но думаю что он рабочий.


 eXeL@B —› Программирование —› Развертівание окружения для написания драйверов под Windows 10

Видеокурс ВЗЛОМ