QUOTE (Sh@dow @ Sep 19 2012, 11:44)

Здраствуйте.
Есть устройство которае соединено с компом через 1Gbit Ethernet. Устройство собирает данные и отсылает в комп. WinXp/7
Я хочу чтоб было так:
1) Комп отсылает команду на начало сбора
2) Устройство начинает собирать данные и отсылать их в комп
3) Прикладная программа никак не реагирует пока данные отсылаются
4) Данные кладутся драйвером в оперативную память
5) По окончанию сбора устройство шлет уведомление об окончании сбора
6) Драйвер через прерывание уведомляет прикладную пограмму об окончании сбора
7) Прикладная программа забирает данные
Я слабо представляю работу сетевой системы Windows и не представляю как подступиться к проблеме.
Как понимаю есть драйвер сетевухи. А с ним можно взаимодействовать через NDIS.
Может ли пользовательская программа это сделать или для работы через NDIS надо еще один драйвер писать?
Это определяется возможностями устройства.
Пишу похожую программу и на комп и на устройство.
На устройстве делаю telnet server на основе lwip
Прикладная программа- включает в себя telnet клиент, который в ascii режиме обменивается данными с устройством.
На PC(windows или Linux) программа на QT пишется по книжкам "программирование сокетов";
Условная компиляция #ifdef LINUX #ifdef WINDOWS
Драйвер не пишется.
Работаем на обоих машинах (device, windows, linux) через tcp-ip стек.