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

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

Получение NET SEND [NT4, Win2k]


Страницы:   1 2

Kirill ©   (2001-10-25 18:10:00) 

Мастера, у меня вопрос:
как можно получить сообщение, полученное от другого компьютера (отправили net send"ом). При этом не давать системе его показать.
А то иногда случайно нажмешь на пробел или на Ентер и просишь всех повторить (ведь не знаешь от кого оно пришло).
Заранее благодарен за все советы и ссылки (желательно не очень далеко).


Kirill   (2002-05-06 15:14:00) [1]

2Korney:
Прога очень понравилась.
При тормозах системы окно не успевает пропадать :)
2Ведмедь:
Попробую.


Korney   (2002-05-03 10:44:00) [2]

2 Linx
Пока нечем делиться, я посылал Kirill-у свою прогу (ссылку я давал выше), в общем то в ней все работает похоже как у тебя, нахожу окно, читаю из него сообщение, закрываю окно. И проблеммы те-же.

Но работа потихоньку продвигается, путь перехвата API похоже самый верный, другого я пока не вижу.

Однако тут еще одна проблемма возникает. чтобы перехватить API в сервисе нужны привилегии администратора, иначе ничего не выйдет.


Ведмедь   (2002-04-23 13:38:00) [3]

2 KirillВся ее платность заключается в нажатии на кнопку Close при старте программы после истечения триала :)


Linx   (2002-04-23 12:41:00) [4]

Kirill и Korney пожалуйста поделитесь проделанной работой, я вижу вы какими-то вариантами кода обмениваетесь. У меня та же проблема, умею читать сообщение из Журнала событий, закрывать нужное окно и вроде все класно, но когда комп блокирован эта схема не работает. Я тоже хочу научиться получать сообщения без окна. Кстати обнаружил интересный момент, просматривал свойство службы "Служба сообщений" и обнаружил, что эту службу можно затускать с какими-то параметрами, вот бы узнать что там за переметры, может там и вывод окна можно отключить?


Kirill   (2002-04-15 17:59:00) [5]

2 Korney:
Прогу получил. Очень хороша. Осталось закрыть вообще появление сообщения.
2 Ведмедь:
Она платная.


Korney   (2002-04-15 12:46:00) [6]

2Ведмедь
Ну ты сказал.
Это по принципу:
- Зачем тебе учиться читать, что бы прочитать "3 Мушкетера" (например), возьми в прокате касету да посмотри.
Нет уж. "Лучше день потерять, потом за 5 минут долететь."
А лишние знания еще никому не мешали.

2Kirill
Появилась новая мысль.
Перехватить вызов API MessageBoxW - через него Messanger service выплувывает на экран принятые сообщения.
Я сейчас как раз над этим работаю, правда уже на немеряное колчество граблей наступил, но пока воюю. Если что получиться толковое, сообщу.


Ведмедь   (2002-04-12 11:15:00) [7]

Дык, не мучься - возьми с www.vypress.com ихний мессагер (по-моему, лучший экземпляр подобного рода прог) и наслаждайся жизнью.


Kirill   (2002-04-11 19:39:00) [8]

2 Korney:
Закидывай на мой ящик.
Не знаю, шутка это или нет, но 1 апреля Мелкомягкие заявили, что следущая операционка будет open-source.
А вот сайт не посоветую - сам найти не могу.


x.000.d   (2002-04-11 19:30:00) [9]

Народ подскажите на каком порту висит эта служба сообщений !?
и можно ли порграммно отпровлять мессы ? как ?
(пример типа winexec ...... не описывать :) )


Korney   (2002-04-10 11:02:00) [10]

2 Kirill
Исходники врядли у кого-то есть. Мелкомягкие жмутся за них. Разве что на каких хакерских сайтах. Гдето в прошлом году проходила информация, что кто-то стянул у них исходники чуть ли не всей винды.
А прогу, если хочешь я тебе на мыло кину. C boom.ru хреново проги качаются. Если знаешь какой бесплатный хостинг, чтобы можно было файлы размещать, подскажи.


Kirill   (2002-04-10 10:26:00) [11]

2Korney:
Меня он тоже уже волнует полгода, но решения пока нет.
То решение с хуком не очень удобен, а остановка службы вообще неприемлим.
Вашу программу с сайта не удалось загрузить, поэтому Ваших результатов не посмотрел.
Вот идея переписать Messenger service хорошая. Возникает вопрос, у кого есть исходники?


Korney   (2002-04-09 15:17:00) [12]

Приходила еще мысль переписать Messenger service но я ее поскорее прогнал, ввиду того что вообще неизвестно что он там делает и как.
Хочется с ним взаимодействовать.


Korney   (2002-04-09 15:08:00) [13]

2 Kirill

Меня этот вопрос уже пол года мучает. Я к нему периодически возвращаюсь когда время появляется. На этот раз вроде ответ найден, в виде перехвата API, но с ним надо разбираться и разбираться. И еще неизвестно как он будет работать, ведь цель - чтобы сообщения принимались программой и тогда когда машина заблокирована.
Чуствую есть простое красивое НЕДОКУМЕНТИРОВАННОЕ решение. Но как бы его раскопать.
Есть еще API функция NetBIOS. Через нее тоже можно попробовать.


Kirill   (2002-04-09 13:37:00) [14]

Ни за что бы не подумал, что этот вопрос так долго проживет!
А ответа все же нет.


Korney   (2002-04-09 12:43:00) [15]

FindWindow - это конечно вариант. но далеко не лучший.
У меня самого на данный момент таким образом работает (кому интересно - http://korney.boom.ru), но хочу переделать. С Хуками похоже тут ничего не выгорит, я их уже все перепробовал, массу времени убил. Надо либо делать перехват API скорее всего MessageBoxA или MessageBoxW, либо писать снифер для сетевой карточки. Другого выхода я пока не вижу.
Хотя нарвался на прозрачную инфу о том что перехваты можно делать через интерфейсы Windows.


fishka   (2002-03-07 12:09:00) [16]

СПАСИБО!!!


USAtyj   (2002-03-07 10:36:00) [17]

"Соо" - это как раз начало от полного текста:

Сообщение от КОМП1 для КОМП2 на 01.01.2002 12:00

222222

У тебя просто размер бувера указан маленький, потому взялось только 3 первых символа.
Опиши Buff как:

Buff: array [0..2048] of char;

И тебе придется первые 2 строки удалять самому, чтобы получить чистый текст сообщения.


Kirill   (2002-03-06 17:54:00) [18]

2 Spector:
Самый простой способ написать батник, что-то вроде этого

:ONEMORE
net send <имя_компа> <текст>
GOTO ONEMORE


fishka   (2002-03-06 15:50:00) [19]

Например, мне приходит сообщение типа "222222".
В программе я пишу (согласно приведенного Вами примера):
Memo2.Lines.Add(strpas(rcMessage));
И получаю в Memo2:
Coo
У меня Windows 2000.
А где присланные мне "222222"? Что не так?


USAtyj   (2002-03-06 15:01:00) [20]

Дык вот же написано:

GetWindowText(GetDlgItem(MsgHdl,65535),Buff,sizeof(Buff));

Т.е. GetWindowText не самого окна, а именно контрола, в котором текст сообщения.


Страницы:   1 2

Наверх

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