[Ответить в тред] Ответить в тред


[Назад][Обновить тред][Вниз][Каталог] [ Автообновление ] 52 | 7 | 4
Назад Вниз Каталог Обновить

Аноним 09/06/17 Птн 02:19:02  154758487  
85865356.png (135Кб, 330x450)
Двач, помоги. Гугл не помог, вся надежда на тебя.
Лаба клиент-сервер на с++
Писал не сам, вроде все работало, но в один прекрасный момент - запускаю сервер, ввожу количество клиентов и на этом все заканчивается, а должны консольки с клиентами вылезти. Что могло сломаться с нихера?
Аноним 09/06/17 Птн 02:19:40  154758505
Какой же я мудак
Аноним 09/06/17 Птн 02:20:00  154758514
6B8Ez87qyA.jpg (64Кб, 722x522)
бамп
Аноним 09/06/17 Птн 02:20:39  154758525
8bcZG78Edk.jpg (83Кб, 604x604)
Аноним 09/06/17 Птн 02:21:14  154758541
>>154758487 (OP)
Окружение изменилось.
А это значит хуево написано.

Мимо программист со стажем
Аноним 09/06/17 Птн 02:21:17  154758543
14546997473530.jpg (92Кб, 650x596)
Аноним 09/06/17 Птн 02:21:46  154758550
>>154758541
А что делать?
Сейчас пишу не на том ноуте, на котором сдавать.
Вижуалка 10.
Аноним 09/06/17 Птн 02:23:50  154758601
0GG6hn-рро.jpg (32Кб, 581x604)
Невозможно найти или открыть файл PDB
Аноним 09/06/17 Птн 02:24:41  154758620
14769936483561.jpg (755Кб, 1920x1536)
Картиночки успокаивают
Аноним 09/06/17 Птн 02:27:09  154758670
14312691444772.jpg (110Кб, 1024x602)
Аноним 09/06/17 Птн 02:29:18  154758714
>>154758550
Искать что изменилось.
Научится пользоваться гуглом.

First change the following parameters:

Tools -> Options -> Debugging -> Symbols -> Server -> Yes

Then press Ctrl+F5 and you will see amazing things.

https://stackoverflow.com/questions/4813975/why-is-visual-studio-2010-not-able-to-find-open-pdb-files
Аноним 09/06/17 Птн 02:41:21  154758977
>>154758714
Спасибо, анон. Но теперь Символы загружены (информация об исходном коде опущена)., буду сидеть, думать дальше
Аноним 09/06/17 Птн 02:44:07  154759043
>>154758977
Думать не надо - смотри дальше ошибки.
Аноним 09/06/17 Птн 02:44:56  154759066
>>154759043
> Думать не надо - смотри дальше ошибки.
Ну и дебаг никто не отменял.
Аноним 09/06/17 Птн 02:46:50  154759113
"admin1.exe": Загружено: "C:\Windows\SysWOW64\WSHTCPIP.DLL", Символы загружены (информация об исходном коде опущена).
"admin1.exe": Выгружено: "C:\Windows\SysWOW64\WSHTCPIP.DLL"
Программа "[2800] admin1.exe: Машинный код" завершилась с кодом -1 (0xffffffff).


Если вкратце, то вот так, гуглю эту херню сижу.
Аноним 09/06/17 Птн 02:57:20  154759345
>>154759113
Ты я смотрю совсем не шаришь?
Аноним 09/06/17 Птн 02:59:15  154759381
>>154759345
Да. Так вышло.
А теперь сокеты, клиенты, серверы..
Аноним 09/06/17 Птн 03:06:20  154759522
>>154759381
Проблема или с кодом (будут ошибки при построении) или с внешними библиотеками. Например их нет по ожидаемому пути, в проект не добавлена ссылка на dll и т.п.
Вариантов тьма, дистанционно не угадаешь. Или у тебя в проекте стоит х64, а ты под х86 запускаешь. Или ещё дохуя чего.
Ищи. Удачи.
Аноним 09/06/17 Птн 03:08:48  154759574
>>154759522
Спасибо.
Дебаг вывел в консольку сервера помимо нужного error bind 10048, а до этого не замечал, когда закрывалось сразу.
Наверное утром допилю.
Аноним 09/06/17 Птн 03:09:47  154759590
>>154759522
Что-то с ебучими сокетами, которые я не знаю нихуя, заебало, хочу зарыться в плед и не вылезать оттуда, пока все само не решится
Аноним 09/06/17 Птн 03:15:59  154759714
if (bind(mysocket, (sockaddr *)&local_addr, sizeof(local_addr)))

короче он заходит сюда и выдает ошибку, которая в этом ифе

Завтра буду разбираться
Аноним 09/06/17 Птн 03:16:59  154759739
>>154759714
Дескриптор проверь. mysocket
Аноним 09/06/17 Птн 03:17:29  154759755
>>154759714
Ну я ж говорю что библиотека не биндится...
Аноним 09/06/17 Птн 03:18:54  154759784
>>154759739
>>154759755
Мне очень стыдно, но я не совсем понимаю, о чем вы..
Погуглю, что такое дескриптор.
Аноним 09/06/17 Птн 03:19:43  154759795
>>154759784
mysocket проверь.
Аноним 09/06/17 Птн 03:19:56  154759802
>>154759795
каким образом?
Аноним 09/06/17 Птн 03:20:18  154759812
>>154759802
Значение его посмотри, перед вызовов bind
Аноним 09/06/17 Птн 03:21:44  154759844
>>154759812
128, насколько я понимаю
Аноним 09/06/17 Птн 03:23:46  154759889
>>154759844
Ну главное, что не != 0. Сложно удалённо помочь, сори.
Аноним 09/06/17 Птн 03:24:24  154759898
>>154759889
Да я понимаю. А общага спит. Надеюсь успешный одногруппник заглянет утром.
Аноним 09/06/17 Птн 03:27:22  154759949
>>154759898
Функция bind должна 0 возвращать, так-как не 0 значение true, то входит в тело условия. int bind_r = bind(mysocket, (sockaddr *)&local_addr, sizeof(local_addr));
Попробуй так, посмотри, что вернёт bind в bind_r
Аноним 09/06/17 Птн 03:29:39  154760011
>>154759949
И еще. Подключи cstdio, в тело условия добавь: perror("bind return: ");
Это выведет последнюю ошибку.
Аноним 09/06/17 Птн 03:30:14  154760026
>>154759898
Все таки надо Гугл подтянуть

https://social.msdn.microsoft.com/Forums/en-US/77af3fe1-b322-4bf3-9aad-ce4da62d7457/error-10048-in-bind?forum=netfxnetcom

Проверяй что сокет свободен перед открытием. Может у тебя уже висит там соединение?
Аноним 09/06/17 Птн 03:34:28  154760124
так
Аноним 09/06/17 Птн 03:35:16  154760139
>>154760026
И да, банально может старый сокет не закрыт быть.
Аноним 09/06/17 Птн 03:37:41  154760193
>>154759949
Ну вы же понимаете, что я хуево соображаю.
bind_r вроде как -1
>>154760011
Как это сделать? Куда добавить?
Так. Навальный у Собчак отвлекает своей болтовней еще.
Аноним 09/06/17 Птн 03:39:25  154760241
>>154760139
Что возвращает нас к моему первому ответу - хуево написано.
Аноним 09/06/17 Птн 03:39:56  154760250
>>154760193
Вроде как или -1 ? Если -1, то bind
не отработал нормально.
#include <cstdio>
if(bind(mysocket, (sockaddr *)&local_addr, sizeof(local_addr)))
perror("bind return: ");
Аноним 09/06/17 Птн 03:41:31  154760275
>>154760241
Но там вроде я вообще сокет не трогала до этого
Только создал же, хз. Надо было учиться в семестре.
Ладно, спасибо двач, надо уснуть, пока солнце не ебашит в глаза.
Спасибо.
Аноним 09/06/17 Птн 03:42:14  154760291
>>154760193
Так ты ещё из этих хомячков?
Ты голову загружай проблемой своей, а не чужим пиздежом. Я тебе ссылку привел - читай ее.
Аноним 09/06/17 Птн 03:42:42  154760298
>>154760250
>if(bind(mysocket, (sockaddr )&local_addr, sizeof(local_addr)))
>perror("bind return: ");
if (bind(mysocket, (sockaddr
)&local_addr, sizeof(local_addr)))

{
int bind_r = bind(mysocket, (sockaddr *)&local_addr, sizeof(local_addr));
// Ошибка

printf("Error bind %d\n", WSAGetLastError());

closesocket(mysocket); // закрываем сокет!

WSACleanup();

return -1;

}
у меня щас это вот так выглядит (так и было)
Аноним 09/06/17 Птн 03:43:26  154760318
>>154758487 (OP)
Мы тебе телепаты что ли? Давай проект сюда на ргхост архивом.
Аноним 09/06/17 Птн 03:43:50  154760328
>>154760298
блять как же криво
извините
Аноним 09/06/17 Птн 03:43:54  154760331
>>154760298
Епт, ну так вывод какой у tprintf("Error bind %d\n", WSAGetLastError()); ?
Аноним 09/06/17 Птн 03:46:28  154760392
>>154760331
Удали это int bind_r = bind(mysocket, (sockaddr *)&local_addr, sizeof(local_addr));
И дай код ошибки, tprintf("Error bind %d\n", WSAGetLastError());
Аноним 09/06/17 Птн 03:46:44  154760396
ОП, в настройках проекта залинкована библиотека ws2_32.lib?
winsock.h включаешь перед windows.h?
Аноним 09/06/17 Птн 03:46:50  154760400
>>154760331
error bind 10048
Аноним 09/06/17 Птн 03:47:21  154760413
>>154760400
> 10048
Address already in use.
Typically, only one usage of each socket address (protocol/IP address/port) is permitted. This error occurs if an application attempts to bind a socket to an IP address/port that has already been used for an existing socket, or a socket that was not closed properly, or one that is still in the process of closing. For server applications that need to bind multiple sockets to the same port number, consider using setsockopt (SO_REUSEADDR). Client applications usually need not call bind at all—connect chooses an unused port automatically. When bind is called with a wildcard address (involving ADDR_ANY), a WSAEADDRINUSE error could be delayed until the specific address is committed. This could happen with a call to another function later, including connect, listen, WSAConnect, or WSAJoinLeaf.
Аноним 09/06/17 Птн 03:47:22  154760414
>>154760396
*winsock2.h конечно же
Аноним 09/06/17 Птн 03:47:47  154760422
>>154760396
Да.
И изначально всё работало, потом вернулся к ноуту и пизда.
Аноним 09/06/17 Птн 03:49:16  154760445
>>154760413
Тоже находил что-то такое, но чет не понимаю, где там эта ошибка.
Аноним 09/06/17 Птн 03:49:56  154760458
>>154760445
Порт занят, меняй порт, или дай возможность его установить при запуске. Как хочешь.
Аноним 09/06/17 Птн 03:53:29  154760529
Вот короче файл с ебучим сервером, если что.
Код кривовато выглядит, но сейчас похуй.
http://rgho.st/6Vkl9Tr55

[Назад][Обновить тред][Вверх][Каталог] [Реквест разбана] [Подписаться на тред] [ ] 52 | 7 | 4
Назад Вверх Каталог Обновить

Топ тредов
Избранное