![]() |
Модераторы: feodorv |
![]() ![]() ![]() |
|
russki |
|
|||
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 25.12.2004 Репутация: нет Всего: нет |
Люди, нужна помощь.
Кто сталкивался, как заранее задать номер порта по которому будет отсылаться ответ клиенту. На серваках будут стоять firewall'ы (разные) нужно заранее открыть порты для ответа клиенту Заранее благодарен |
|||
|
||||
Mad |
|
|||
Опытный ![]() ![]() Профиль Группа: Эксперт Сообщений: 656 Регистрация: 18.10.2004 Где: Одесса Репутация: 3 Всего: 19 |
Ну так в чем проблемма ?
![]() Береш любой порт, а потом говориш админам что твоя прога его использует (чтоб не закрывали ![]() И если речь идет о TCP (а не о UDP) то то ответ посылаеш по томуже socket-у, что и пришел запрос ![]() |
|||
|
||||
russki |
|
|||
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 25.12.2004 Репутация: нет Всего: нет |
SOCKADDR_IN sockaddr, cliaddr;
int fromlen = sizeof(sockaddr); SOCKET sock = socket(AF_INET,SOCK_STREAM,0); sockaddr.sin_family = AF_INET; sockaddr.sin_addr.S_un.S_addr = INADDR_ANY; sockaddr.sin_port = htons(53000); int bindres = bind(sock,(SOCKADDR*)&sockaddr,sizeof(SOCKADDR_IN)); if (bindres) return FALSE; listen(sock,5); while (1){ SOCKET sockcli = accept(sock,(SOCKADDR*)&cliaddr,&fromlen); DWORD thr; CreateThread(NULL,0,pThis->CFileOperationThread,&sockcli,0,&thr); } короче, попытался я передать клиенту 2 байта (номер полученного порта) после accept через sock, а send вернул -1, хотя connect вернул 0, и через sockcli идет дальнейший обмен. ![]() Если можешь с исходником скинь ![]() |
|||
|
||||
Mad |
|
||||
Опытный ![]() ![]() Профиль Группа: Эксперт Сообщений: 656 Регистрация: 18.10.2004 Где: Одесса Репутация: 3 Всего: 19 |
Тут у тебя ошибка. Ты передаеш указатель на локальную переменную (строго говоря, в потоке она будет не определенна). Попробуй так.
|
||||
|
|||||
![]() ![]() ![]() |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Сети | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |