Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Написать драйвер, Как написать простейший драйвер? 
:(
    Опции темы
ANDLL
  Дата 2.4.2004, 17:17 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Народ, плз...

Подкинте примерчик работающего под NT(точнее XP) драйвера. Пусть он хотя бы, к примеру ничего не делает, а просто регистрируется в сис. как Очень бесполезное уст-во[s]

А нужно вот зачем. Я пишу прогру для работы с LPT-портом. Данные в порт пишу так:


mov al,x
mov dx,378h
out dx,al

(кусок на асме) Но WindowsXP при последней операции пишет ошибку - видимо она запрещает обычным програм писать в порт. А драйверам - разрешает. Или не так?
  Вверх
Масяня
Дата 2.4.2004, 19:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 33
Регистрация: 1.4.2004

Репутация: нет
Всего: нет



драйверам режима ядра все можно делать!
Ищи Windows DDK, там есть примеры...
PM MAIL   Вверх
ANDLL
Дата 3.4.2004, 08:24 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Так вот, насчет DDK.

У меня some problems с англицким и потому хотелось бы чегось на русском.
  Вверх
mr.DUDA
Дата 3.4.2004, 12:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

Репутация: 25
Всего: 232



Цитата
Так вот, насчет DDK.

У меня some problems с англицким и потому хотелось бы чегось на русском.

Это вряд ли получится.
Для начинающих можно попытаться сварганить дрова под Jungo WinDriver, а затем освоив принципы "дровастроения" (диапазоны адресов ввода/вывода, доступ к регистрам устройства, прерывания, работа в защищённом режиме и т.п.) - перейти к изучению DDK.


--------------------
user posted image
PM MAIL WWW   Вверх
maxim1000
Дата 3.4.2004, 14:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 3334
Регистрация: 11.1.2003
Где: Киев

Репутация: 17
Всего: 110



я бы поставил под сомнение необходимость написания драйвера
например, для успешной работы с COM-портом не нужно писать никаких драйверов: достаточно открыть MSDN и взглянуть на примерчик
может, что-то подобное подойдет и для LPT?


--------------------
qqq
PM WWW   Вверх
shedon
Дата 3.4.2004, 15:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Экс. модератор
Сообщений: 1209
Регистрация: 17.1.2003
Где: Нижнiй Новгородъ

Репутация: 4
Всего: 11



а можно воспользоваться и готовым драйвером WinIO, я когда-то через него с LPT работал


--------------------
Programming is like sex: One mistake and you have to support it your lifetime
PM MAIL WWW ICQ   Вверх
Guest
Дата 3.4.2004, 18:10 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Вопрос: а как работать с WinIO?
  Вверх
shedon
Дата 3.4.2004, 20:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Экс. модератор
Сообщений: 1209
Регистрация: 17.1.2003
Где: Нижнiй Новгородъ

Репутация: 4
Всего: 11



а к нему дока должна быть там всё понятно описанно, просто подгружаешь её длл к своей проге и там есть функции которые заменяют out и in


--------------------
Programming is like sex: One mistake and you have to support it your lifetime
PM MAIL WWW ICQ   Вверх
mr.DUDA
Дата 3.4.2004, 22:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

Репутация: 25
Всего: 232



Цитата
а к нему дока должна быть там всё понятно описанно, просто подгружаешь её длл к своей проге и там есть функции которые заменяют out и in

то же самое, но более упрощённо - в WinDriver'e (там даже есть специальное окно типа AppWizard'а, в котором прописываются диапазоны in/out портов ввода-вывода и т.п.)



--------------------
user posted image
PM MAIL WWW   Вверх
ANDLL
Дата 4.4.2004, 11:33 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Извиняюсь, но где взятьть WinIO? У меня на компе такой библии нету. В крайнем случае нету в папке windows.[s]
  Вверх
shedon
Дата 4.4.2004, 15:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Экс. модератор
Сообщений: 1209
Регистрация: 17.1.2003
Где: Нижнiй Новгородъ

Репутация: 4
Всего: 11



Цитата
Извиняюсь, но где взятьть WinIO?

WinIO
Google - forever smile.gif


--------------------
Programming is like sex: One mistake and you have to support it your lifetime
PM MAIL WWW ICQ   Вверх
Guest
Дата 5.4.2004, 17:50 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Вообще есть приятная книжка Солдатов"Программирование драйверов под винду".
Или[url=http://www.soldatov.net]. Разобраться с докой под DDK действительно трудновато.
  Вверх
p0s0l
Дата 6.4.2004, 22:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Г-н Посол
****


Профиль
Группа: Экс. модератор
Сообщений: 3668
Регистрация: 13.7.2003
Где: 58°38' с.ш. 4 9°41' в.д.

Репутация: 2
Всего: 112



Цитата
я бы поставил под сомнение необходимость написания драйвера
например, для успешной работы с COM-портом не нужно писать никаких драйверов: достаточно открыть MSDN и взглянуть на примерчик
может, что-то подобное подойдет и для LPT?

Да-да, зачем мудрить ? CreateFile('LPT1', ...); ...; ReadFile(); WriteFile();
Т.е. с портом как с файлом работаем.


--------------------
С уважением, г-н Посол.
PM   Вверх
shedon
Дата 7.4.2004, 07:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Экс. модератор
Сообщений: 1209
Регистрация: 17.1.2003
Где: Нижнiй Новгородъ

Репутация: 4
Всего: 11



Цитата
Да-да, зачем мудрить ? CreateFile('LPT1', ...); ...; ReadFile(); WriteFile();
Т.е. с портом как с файлом работаем.

CreateFile конечно хорошо, но иногда нужно работать на прямую с портом, всё зависит от приложения.


--------------------
Programming is like sex: One mistake and you have to support it your lifetime
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0686 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.