По советам анонов из предыдущих тредов решил поднять локальный прокси-сервер на С++ для того чтобы было легче взаимодействовать с передачей данных.
Попытался воспользоваться готовым кодом с сайта Microsoft. Он никаких ошибок не выдал, но я все-же решил повыводить через каждый вызов функции что-нибудь в консоль. И как выяснилось, после вызова функции accept в консоль ничего не выводится. Почему?
>>235742775 (OP) Так может потому что к тебе ни кто не подключается? Accept сидит в цикле пока не появится подключение. Вынеси accept в другой поток, раз уж тебе так надо что бы код дальше исполнялся.
>>235742848 Я вообще понятия не имею как должно все работать. Для начала решил проверить работает ли вообще.. А надо? Я думал можно поднять локальный прокси сервер и делать ещё какие-то действия, а подключаться когда захочу..
>>235742985 Чтобы сервер работал как надо, тебе нужно accept закинуть в отдельный поток к примеру, дабы обрабатывать входящие подключения к серверу. Если ты прям настолько тупой, что вообще никак, обрати внимание на какие-нибудь готовые библиотеки типа того же ENet, которые позволяют тебе тупо в цикле обновлять всё и получать какие-либо эвенты типа подключения, приёма данных и т.п.
>>235743190 ENet https://github.com/lsalzman/enet Либо любая другая кроссплатформенная библиотека для работы с сетью. Либо же сам ебешься и пишешь платформозависимый код, оборачивая его слоем абстракций
>>235742775 (OP) Делай на неблокирующих сокетах, это чуть сложнее, но в целом выходит круче. >>235743044 >WSASend и WSARecv Это те же BSD-шные send и recv.
>>235743381 Мне нужно именно WSASend и WSARecv. Если бы они были простой обёрткой над send и recv, то при перехвате send или recv и отмене отправки данных они бы не отправлялись. Однако они отправляются. А вот когда WSASend или WSARecv тогда нет.
>>235743843 >Вангую, ты обрабатываешь не все состоятния TCP Всё что отправляется при помощи вызова функции send я отменял и WSASend отправка всё равно работала.
>>235744108 Изобретаешь свой велосипед - получаешь понимание, как оно там вообще изнутри функционирует. Не обязательно прибиваться к WinAPI, можно написать кроссплатформенную либу, чисто в целях обучения.
>>235744173 >Изобретаешь свой велосипед - получаешь понимание, как оно там вообще изнутри функционирует Ты хуйню какую-то пишешь. Чем принципиально API ASIO отличается от API Winsock? Там точно те же сокеты и буферы.
>>235744050 >удобство ООП На сложность разработки сетевой стейт-машины ООП влияет примерно никак. >кросс-платформенность BSD-сокеты уже кроссплатформенны и в винде они есть. Не знаю, почему ОП к WSA привязывается.
>>235742775 (OP) если ты уже просто слушаешь порт и устанавливаешь коннект на реальный серв то ты реально хочешь продолжать ебаться с плюсами? наебаш на шарпах - 2 таски одна читает из коннекта игры и пишет в коннект сервера, вторая наоборот
>>235744181 Тем, что прострелит себе ногу пару раз. Узнает, что такое асинхронность, начнёт копать в сторону работы потоков и прочих вещей, выстрелит себе в ногу ещё пару раз, поймёт как не надо делать. Тут главное получить сами знания того, как это всё можно соорудить. Получаешь такой опыт и идёшь юзать то, что было сделано до тебя с пониманием, как и что функционирует и не задаёшь потом вопросов "А почему это после accept ничего не выполняется?". В этом был мой посыл.
>>235744245 ты запускаешь сервер, цикл отрабатывает и завершается. ошибок нет. ты ловишь ошибки на подключение к серверу, а ты к нему подключаешься хоть? нет. вынеси все в отдельный поток, чтобы оно в фоне работало, и при каждом обращении к серву выдавало тебе все ошибки.
>>235744322 Нахуй тогда компилятор нужен? Можно сразу в hex-редакторе бинарщину хуярить. Выстрелить себе в ногу пару раз, зато поймёшь, как на самом деле работает этот ваш x86.
>>235744655 >Ты реально думаешь, что без знания ассемблера есть смысл программировать? Ассемблер это слишком высокоуровнево, надо сразу прям сырые байты писать, без трансляции.
>>235744627 >Ну да, ну да, лучше быть тупой макакой, которая не может нихуя даже сделать без гугла и сраных библиотек, чем нормальным спецом Нет, лучше изобретать велосипед на каждый чих, игнорируя опыт других людей. "Макаки" с библиотеками создают рабочие продукты, "пуристы" ничего сложнее бесполезного пет-проджекта сотворить неспособны. И не факт, что даже эта хуйня будет производительнее решений на фреймворках.
>>235744924 > надо сразу прям сырые байты писать, без трансляции. Для x86 это сложновато. Для ARM или последователей PDP - легко. Для MIPS - не пробовал.
>>235744924 Процитирую себя же >Получаешь такой опыт и идёшь юзать то, что было сделано до тебя с пониманием, как и что функционирует и не задаёшь потом вопросов "А почему это после accept ничего не выполняется?". В этом был мой посыл. Никто не говорит сидеть на своих пет проектах. А вообще - да, пиздуй верстать лендинги
когда ещё хуй стоял и срален насиловал ленена в жопу вообще на бумаге на дереве вырезали нули и единицы вот тогда люди умели программировать а щас формошлёпы ебаные хрр тьфу
>>235744173 >Изобретаешь свой велосипед - получаешь понимание, как оно там вообще изнутри функционирует И получаешь понимание, что суровые бородатые программисты с 20-30летним опытом, разрабатывающие либы, не зря едят свой хлеб, и эти полгода, что ты потратил на свой велосипед, прошли напрасно.
>>235742775 (OP) Этот айти евнух будет через год зарабатывать 100кк/сек стажером. Гоня подобную же хуету своим менторам. А вы так и будете сосать хуи со своими советами.
>>235754092 Дибил тебе же уже сказали напиши свой прокси, заодно разберешься как tcp/ip стек работает. Нет же лучше выковыривать из носа какой то бред на голом win api под которым ни один вменяемый человек уже 20 лет не пишет и спрашивать советов. Иди нахуй, в пизду катись. Заебал
>>235753959 >всё равно за буст топят Дубинушка, я топлю за другой вариант, который ОПом игнорируется, что не мешает ему использоваться в десятке известных опенсорсных продуктов. Но ЭТА ЖИ СЛОЖНА, НАДО НА ДВЕ СТРОЧКИ БОЛЬШЕ НАПИСАТЬ И МАССИВ ОБЪЯВИТЬ. >>235753571 Надо.
>>235754885 Но в документации сказано что функция WSAStartup инициирует использование Winsock DLL процессом. Но ведь процесс игры уже использует эту библиотеку..
>>235754944 Двачую, есть такие подозрения. >>235754984 Знания ты игноришь. >>235755040 DLL подключает линковщик, а через WSAStartup ты инициализируешь WinSock и указываешь версию.
>>235755434 Передача данных игрой уже используется, значит игра уже вызывала WSAStartup. Зачем его вызывать повторно? Или WSAStartup это как сигнал о том что здесь он тоже будет использоваться?
>>235755723 >Зачем его вызывать повторно? Повторно из того же процесса можно не вызывать. Советую ещё излагать мысли внятно и не надеяться на наличие телепатов в треде, тогда ты быстрее получишь ответ.
>>235742775 (OP) Анон, тебе нужно прокси или WinAPI? Если прокси, напиши на C#, запусти локалхост, попробуй через постмена посылать запросы и не еби мозги, если ты кайфуешь от дроча на WinAPI -- тебе не сюда точно
>>235756675 > тебе нужно прокси или WinAPI? Если прокси, напиши на C# Прокси на C# работает на том же WinAPI. Просто ты скорее всего имел ввиду использовать какие-нибудь готовые библиотеки.