Собственно subj. Подскажите в какую сторону плыть. Как я понял, огромное число примеров в инете ориентированы на использование CreateFile('COM1') и т.д. с работой побайтно через ReadFile/WriteFile. Но в данном случае, мне нужно получать не данные, а состояние пинов: TxD, RxD, RTS, CTS, DTR, DSR, RI, DCD, GND для 9-пинного разъема. В DOS и Win9x работа шла через порты IO in/out. А как поступить в XP? Есть ли способ обойтись БЕЗ собственного драйвера (гложат сильные сомнения)? Если нет, то стоит ли опираться при работе на пример "3.3 Драйвер режима ядра beeper" из KmdTut или есть другие варианты? Заранее спасибо. Если есть какие-либо примеры или документация, то можно скинуть на ящик XerxWork@narod.ru
По моему, придется все таки использовать драйвер, либо какой нибудь полулегальный метод получения привилегий ринг 0. Где то видел статью (кажется в секретах вынь32), в которой приводился пример работы в нулевом кольце без драйвера. Там люди изменяли карту ввода - вывода процесса, так что можно было работать напрямую с портами in/out (в данном случае - com).
>OioVologda Хорошо, я посмотрю в Секретах. Но по прежнему жду еще каких-либо предложений для получения более объективной оценки.
Можно не писать свой драйвер, а воспользоваться драйвером, который даёт доступ к портам из обычного приложения. giveio
Вот еще, чужие дрова юзать, типо своих не напишем. Книжки надо читать. Там, карту ввода-вывода поменять, что сторонние дрова и делают. Без драйвера несколько сложнее, так как приходится делать много грязной работы по инициализации необходимых для работы параметров, например адресов библиотек api.