MOPO3
Ай да дэдушка! Вах...
Команда клуба
Offline
Пол:
Холадна аднака!
|
|
« : 18-08-2004 07:00 » |
|
Интересует как из своей проги получить доступ к буфферу используемого другой прогой ком порта, чтобы видеть входящую и исходящую из порта в порт инфу ? Можно ли это сделать ? И можно ли изменять эти данные и отправлять в этот же буфер ? Мне посоветовали вот что : Перехватить в "другой проге" функции работы с ком-портом. ReadFile, WriteFile, CreateFile - чтобы знать, какму описателю соответствует COM-порт, CloseHandle - чтобы знать, когда описатель потеряет актуальность.
Отсюда и вопрос. Если кто либо занимался этим когда-нибудь, подкиньте ссылочек на инфу, где почитать и посмотреть примерчики.
|
|
|
Записан
|
MCP, MCAD, MCTS:Win, MCTS:Web
|
|
|
Джон
просто
Администратор
Offline
Пол:
|
|
« Ответ #1 : 18-08-2004 07:12 » |
|
MOPO3, Это называется "захучить" (с) SlavaI. Англиский термин - hook. Посмотри на RSDN. http://rsdn.ru/article/baseserv/winhooks.xmlТам даже статейка была, в качестве примера, как MessageBox подменить. Прсото дай поиск по hook. Сам я только клаву хучил, а по COM - сорри, не делал. ЗЫ Ааааа наврал, вот ща нашёл http://rsdn.ru/article/baseserv/IntercetionAPI.xmlНо хуки тоже посмотри, может поможет. Или кто-нить опровергните меня, чтоб человек не мучался.
|
|
|
Записан
|
Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома. "Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash "Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman "All science is either physics or stamp collecting." Ernest Rutherford "Wer will, findet Wege, wer nicht will, findet Gründe."
|
|
|
MOPO3
Ай да дэдушка! Вах...
Команда клуба
Offline
Пол:
Холадна аднака!
|
|
« Ответ #2 : 18-08-2004 08:10 » |
|
Это я сейчас читаю. Тут я не могу пример скомпилить и посмотреть из-за этого : Для работы нам потребуются следующие заголовочные файлы{ #include "stdafx.h" #include "intercpt.h" Вот это "intercpt.h" откуда взять ?
|
|
|
Записан
|
MCP, MCAD, MCTS:Win, MCTS:Web
|
|
|
Джон
просто
Администратор
Offline
Пол:
|
|
« Ответ #3 : 18-08-2004 08:31 » |
|
Вот это "intercpt.h" откуда взять ? А выкинуть не пробовал? Я думаю он туда просто все свои ф-ции засунул. Чтоб удобнее подключать было.
|
|
|
Записан
|
Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома. "Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash "Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman "All science is either physics or stamp collecting." Ernest Rutherford "Wer will, findet Wege, wer nicht will, findet Gründe."
|
|
|
MOPO3
Ай да дэдушка! Вах...
Команда клуба
Offline
Пол:
Холадна аднака!
|
|
« Ответ #4 : 18-08-2004 08:34 » |
|
Джон, ну мля, так и есть. Убрал и работает. Буду дальше бачить.
|
|
|
Записан
|
MCP, MCAD, MCTS:Win, MCTS:Web
|
|
|
Джон
просто
Администратор
Offline
Пол:
|
|
« Ответ #5 : 18-08-2004 08:46 » |
|
Успехов!
|
|
|
Записан
|
Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома. "Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash "Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman "All science is either physics or stamp collecting." Ernest Rutherford "Wer will, findet Wege, wer nicht will, findet Gründe."
|
|
|
MOPO3
Ай да дэдушка! Вах...
Команда клуба
Offline
Пол:
Холадна аднака!
|
|
« Ответ #6 : 18-08-2004 08:48 » |
|
Джон, к сожалению этот вариант не подходит Вылетает всегда с You have not enough rights to attach dlls
|
|
|
Записан
|
MCP, MCAD, MCTS:Win, MCTS:Web
|
|
|
Гром
Птычк. Тьфу, птычник... Вот!
Готовлюсь к пенсии
Offline
Пол:
Бодрый птах
|
|
« Ответ #7 : 18-08-2004 09:01 » |
|
MOPO3, Это должно работать - тут дело в сложности задачи - но это возможно - прорыв за адрессное пространство процесса возможен - я посмотрю, что найти тебе смогу.
|
|
|
Записан
|
А птичку нашу прошу не обижать!!!
|
|
|
Джон
просто
Администратор
Offline
Пол:
|
|
« Ответ #8 : 18-08-2004 09:14 » |
|
MOPO3, На http://www.sysinternals.com/ была (и есть) прога, которая наверно делает, то что тебе надо. http://www.sysinternals.com/ntw2k/freeware/portmon.shtml Изменять данные она конечно не может, но мониторить позволяет. К сожалению без исходников. Может, тебе в этом направлении покапать? Раз уж никто не откликается. Хоть как-то тебя подбодрить, в том смысле, что задачку можно решить. А изменять данные обязательно? Я думаю это будет труднее всего сделать. А у "драйверщиков" не спрашивал?
|
|
|
Записан
|
Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома. "Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash "Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman "All science is either physics or stamp collecting." Ernest Rutherford "Wer will, findet Wege, wer nicht will, findet Gründe."
|
|
|
Pu
Большой босс
Offline
78
|
|
« Ответ #9 : 18-08-2004 09:25 » |
|
Джон, этой прогой уже давно пользуюсь и как показывает практика сей вариант возможен, хотя как бы уже было у нас помню такое обсуждение. Но в портмон по-моему есть такая фича - его надо раньше своей проги запустить, я подозреваю, что открывая порт из своей программы мы реально обращаемся не к системным ресурсам, а, вероятно, к портмону. Тоже покопаю чуток в свободное время.
|
|
|
Записан
|
Насколько я опытен? Достаточно, чтобы понимать, что дураков нельзя заставить думать по–другому, но недостаточно, чтобы отказаться от попыток это сделать. (с) Артур Джонс
|
|
|
Джон
просто
Администратор
Offline
Пол:
|
|
« Ответ #10 : 18-08-2004 09:30 » |
|
Pu, Насклько я помню, такое действительно было, но только в версии для вин9х (уже сто лет не юзал). А под НТ вроде и так работает, даже можно через сеть сниффить. Те это показывает, что грубого внедрения в систему не требуется.
|
|
|
Записан
|
Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома. "Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash "Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman "All science is either physics or stamp collecting." Ernest Rutherford "Wer will, findet Wege, wer nicht will, findet Gründe."
|
|
|
Pu
Большой босс
Offline
78
|
|
« Ответ #11 : 18-08-2004 09:34 » |
|
Джон, а вот щас и попробую. :!:
|
|
|
Записан
|
Насколько я опытен? Достаточно, чтобы понимать, что дураков нельзя заставить думать по–другому, но недостаточно, чтобы отказаться от попыток это сделать. (с) Артур Джонс
|
|
|
Pu
Большой босс
Offline
78
|
|
« Ответ #12 : 18-08-2004 09:46 » |
|
вроде работает. только при первой попытке закапчурить порт портмон ругнулся что порт уже используется. повторить не удалось. сниффит как пчелка.
|
|
|
Записан
|
Насколько я опытен? Достаточно, чтобы понимать, что дураков нельзя заставить думать по–другому, но недостаточно, чтобы отказаться от попыток это сделать. (с) Артур Джонс
|
|
|
MOPO3
Ай да дэдушка! Вах...
Команда клуба
Offline
Пол:
Холадна аднака!
|
|
« Ответ #13 : 18-08-2004 10:38 » |
|
Джон, Pu, мне необходимо не только мониторить, а именно подставлять свои данные. А портмон я пойду сейчас гляну.
|
|
|
Записан
|
MCP, MCAD, MCTS:Win, MCTS:Web
|
|
|
MOPO3
Ай да дэдушка! Вах...
Команда клуба
Offline
Пол:
Холадна аднака!
|
|
« Ответ #14 : 18-08-2004 10:41 » |
|
А у "драйверщиков" не спрашивал? Дело в том что в дровах я практически не шарю, и соответственно не могу полноценно и правильно сформировать вопрос. А задавать вопросы из серии "ламер" не очень хоцеца, потому как ответ вразумительный получить практически невозможно.
|
|
|
Записан
|
MCP, MCAD, MCTS:Win, MCTS:Web
|
|
|
MOPO3
Ай да дэдушка! Вах...
Команда клуба
Offline
Пол:
Холадна аднака!
|
|
« Ответ #15 : 18-08-2004 11:47 » |
|
Жаль что сырцов к ней нема
|
|
|
Записан
|
MCP, MCAD, MCTS:Win, MCTS:Web
|
|
|
Pu
Большой босс
Offline
78
|
|
« Ответ #16 : 18-08-2004 12:00 » |
|
MOPO3, что можу еще предложить, порассматривай потроха этой утилитки, может наведут на мысли используемые в ней системные функции. занятие правда неблагодарное , но вся инфа как правило в конце файла складирована(всякия там kernel32, user32 итд).
|
|
|
Записан
|
Насколько я опытен? Достаточно, чтобы понимать, что дураков нельзя заставить думать по–другому, но недостаточно, чтобы отказаться от попыток это сделать. (с) Артур Джонс
|
|
|
baleog
Гость
|
|
« Ответ #17 : 18-08-2004 12:11 » |
|
|
|
|
Записан
|
|
|
|
|
MOPO3
Ай да дэдушка! Вах...
Команда клуба
Offline
Пол:
Холадна аднака!
|
|
« Ответ #19 : 18-08-2004 13:27 » |
|
baleog, неб не то, там про фильтр файловой системы. Серж, благодарю, ушол читать.
|
|
|
Записан
|
MCP, MCAD, MCTS:Win, MCTS:Web
|
|
|
xelos
Гость
|
|
« Ответ #20 : 18-08-2004 22:06 » |
|
существует несколько типов драйверов. один из типов - фильтры. Этот драйвер вызывается до основного драйвера и его цель - предварительная обработка данных. такой драйвер как нельзя лучше подходит для твоих целей.
|
|
|
Записан
|
|
|
|
|