![]() |
|
|
![]()
|
|
| TerminalSoul |
|
||||||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 24.9.2009 Репутация: нет Всего: 1 |
Вот пытаюсь написать программу, которая бы тащила с сайта(в данном случае mail.ru) HTML код, и потом обрабатывала, но проблема в том, что после отправки пакета не вызывается OnReceive(). Базовый класс сокета CAssyncSocket.
Вот метод отправки сообщения:
А вот метод Init()
А вот собственно метод, вызываемый после нажатия на кнопку:
Что не так или может я вообще пытаюсь штаны через голову одеть и надо делать по другому? |
||||||
|
|||||||
| Alca |
|
||||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3993 Регистрация: 14.6.2006 Репутация: 6 Всего: 50 |
Добавлено через 22 секунды Нафиг там пробел? |
||||
|
|||||
| TerminalSoul |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 24.9.2009 Репутация: нет Всего: 1 |
Хм, да нет собственно пробел там на фиг не нужен, но проблемы это не решает. Мне просто интересно, беда в том что сервер ответ не шлёт или в том, что я не обрабатываю запрос как надо.
Я так понимаю, что после посылки запроса, когда придёт ответ программа должна вызвать метод OnReceive в котором я должен юзать сам Receive. Но OnReceive ваще не включается, второй день бьюсь... |
|||
|
||||
| SenkraD |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 933 Регистрация: 3.2.2006 Где: Украина::Киев Репутация: 4 Всего: 23 |
TerminalSoul, я нигде не вижу вызова CAsyncSocket::Receive -
сокет хоть а асинхронный, но кто-то должен ему скомандовать принять данные Это сообщение отредактировал(а) SenkraD - 24.9.2009, 18:46 |
|||
|
||||
| TerminalSoul |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 24.9.2009 Репутация: нет Всего: 1 |
Если после вызова Send, вызвать Receive он вернет -1, что означает принимать нечего, а Receive должен быть вызван из OnReceive, который как раз не вызывается ну код вот он:
Класс Ctrysocket1Dlg не производный от CAsyncSocket но он вызывается из такого же OnReceive, который находится в классе сокета. Это сообщение отредактировал(а) TerminalSoul - 24.9.2009, 19:03 |
|||
|
||||
| SenkraD |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 933 Регистрация: 3.2.2006 Где: Украина::Киев Репутация: 4 Всего: 23 |
Давай сюда весь код касчающийся сокета и работы с ним
|
|||
|
||||
| TerminalSoul |
|
||||||||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 24.9.2009 Репутация: нет Всего: 1 |
Тут половина это стандартный код, который VisualStudio генерит...
ClientSocket.h
ClientSocket.cpp
trysocket1Dlg.h
trysocket1Dlg.cpp
|
||||||||
|
|||||||||
| SenkraD |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 933 Регистрация: 3.2.2006 Где: Украина::Киев Репутация: 4 Всего: 23 |
попробуй так
|
|||
|
||||
| TerminalSoul |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 24.9.2009 Репутация: нет Всего: 1 |
не прокатывает, я видимо чего-то не понимаю...
|
|||
|
||||
| SenkraD |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 933 Регистрация: 3.2.2006 Где: Украина::Киев Репутация: 4 Всего: 23 |
У тебя конеект асинхронный - нужно посылать запрос SendPacket в OnConnect
|
|||
|
||||
| TerminalSoul |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 24.9.2009 Репутация: нет Всего: 1 |
Бальшое спасибо
SenkraD. |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Visual C++/MFC/WTL | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |