Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Использование DeviceIoControl в Delphi. [D5, Win95/98]


Василий 2100 ©   (2002-12-10 10:46:00) 

Как правильно использовать DeviceIoControl при вызове нужной
функции из не зарегестрированного (самодельного) динамического VxD? Передать данные из VxD в буфер своей программы Delphi?
Заранее блогадарю!


han_malign   (2002-12-10 13:01:00) [1]

hDevice:=CreateFile("MyVxd.vxd",GENERIC_READ or GENERIC_WRITE,nil,OPEN_EXISTING,FILE_FLAG_DELETE_ON_CLOSE,0)
DeviceIOControl(hDevice,CTRL_MY_COMMAND,@CmdStruct,sizeof(CmdStruct),@ReadBuf,sizeof(ReadBuf),dwTransferedSize,nil);
- ну и само собой ошибки обрабатывать, с ассинхроным доступом(overlapped) сам разбирайся (CmdStruct - нужен только чтобы передать какие-то дополнительные управляющие параметры или исходящие данные). А вообще чтение/запись с устройства оформляется все-таки через IrpRead/IrpWrite, и делается через ReadFile/WriteFile, только под Wind98 единственный способ асинхронного доступа - это DeviceIOControl.


Наверх

Титульная страница Поиск, карта сайта Написать письмо