|
0 / 0 / 0
Регистрация: 20.09.2011
Сообщений: 14
|
||||||
Многопоточный TCP сервер19.10.2011, 12:43. Показов 9540. Ответов 10
Метки нет (Все метки)
Привет всем.
У меня есть задача написать клиент-серверное приложение, с определенными условиями. С сабжем я еще не работал, поэтому для начала хочу запустить простой сервер и подконектиться к нему, обменяться пакетами для теста, потом ковырять дальше. Нашел хороший пример на сайте у майкрософта (http://msdn.microsoft.com/ru-r... S.85).aspx), есть исходники и документация подробная. Сервер скомпилился хорошо. А вот с клиентом проблемы. Кто подскажет в чем дело?
Ошибка: Unable to open file ADVAPI32.LIB Advapi32.dll в system32 лежит. Запускаю в C++Builder6 в Win7. Буду рад любым советам и разъяснениям.
0
|
||||||
| 19.10.2011, 12:43 | |
|
Ответы с готовыми решениями:
10
Многопоточный TCP сервер Многопоточный TCP сервер многопоточный сервер TCP |
|
|
|||
| 19.10.2011, 12:50 | |||
|
если ADVAPI32.LIB существует - добавьте ее в проект: Project->Add to Project... и укажите вашу ADVAPI32.LIB
или укажите в настройках проекта - в Library Path , Include Path путь к либе. если ADVAPI32.LIB не существует - сделайте ее из Advapi32.dll: implib.exe в каталоге Bin Билдера, строка запуска:
Проще всего поместить implib.exe и Advapi32.dll в отдельную папку и выполнить:
1
|
|||
|
0 / 0 / 0
Регистрация: 20.09.2011
Сообщений: 14
|
||||||
| 19.10.2011, 13:43 [ТС] | ||||||
|
Cгенерил *.lib файлы из *.dll виндовсовских. Добавил в проект через Add to project, однако ошибка осталась.
Добавлено через 14 минут и в сервере таким вот образом добавляется
Добавлено через 11 минут проблема решилась добавлением сгенерированных библиотек в C:\Program Files (x86)\Borland\CBuilder6\Lib все просто очень оказалось. Может тема будет полезна ссылкой на пример клиент-сервер от майкрософт
0
|
||||||
|
|
||
| 19.10.2011, 14:45 | ||
|
lizard, там про это тоже было:
0
|
||
|
0 / 0 / 0
Регистрация: 20.09.2011
Сообщений: 14
|
||||||
| 20.10.2011, 20:37 [ТС] | ||||||
|
Что-то поэкспериментировав с кодом немного в ступор зашел.
Подскажите пожалуйста... данный код вообще является примером многопоточного сервера?
0
|
||||||
|
0 / 0 / 0
Регистрация: 20.09.2011
Сообщений: 14
|
|||||||||||
| 28.10.2011, 02:09 [ТС] | |||||||||||
|
Спасибо за ссылку, материал по ней дает первоначальное представление об использовании Winsock.
Есть еще вопрос: Могу ли я самостоятельно определять структуру пакета, не используя RAW сокеты? Может быть у кого нибудь есть ссылки по теме, идеально было бы с кодом откомменченым. Добавлено через 12 часов 50 минут Копнув глубже понял что RAW сокеты мне не нужны. Есть проблема с передачей бинарных файлов.
Ошибка при передаче размера файла. Буду рад любой помощи (:
0
|
|||||||||||
|
0 / 0 / 0
Регистрация: 20.09.2011
Сообщений: 14
|
|||||||||||
| 02.11.2011, 13:31 [ТС] | |||||||||||
|
Немного дописал код, теперь возникает следующая ситуация:
Бинарный файл передается от сервера к клиенту, размер отправленного и переданного файла равны, однако при попытке запуска файла win7 64 выдает ошибку: "Средству просмотра изображение не удалось открыть эту картинку, поскольку файл поврежден или слишком велик" - в случае jpg. "Версия этого файла не совместима с используемой версией Windows..." - в случае exe.
Подскажите, пожалуйста, в чем проблема. И правильна ли вообще логика. Так же интересует вопрос формирования структуры буфера (к примеру мне надо сделать шапку таблицы MD5, size, info и засунуть туда несколько файлов) что для этого надо использовать, может у кого есть полезные линки. Буду рад подсказкам\помощи (:
0
|
|||||||||||
| 02.11.2011, 14:21 | |
|
1считываете файл полностью в очеь большую строку
2проверьте в неё наличие символов при которых функция send прикращает свою работу символ 0 или eof должен быть только в конце строки 3 вызовите функцию send в циклке так как одна send естественно файл не передаст 4 вызовите функцию recv в цикле 5 создайте файл с нужным расширение 6заппишите в него строку
0
|
|
| 02.11.2011, 14:21 | |
|
Помогаю со студенческими работами здесь
11
Многопоточный TCP сервер Многопоточный сервер TCP: разослать сообщения по всем клиентам Как написать многопоточный tcp сервер, рассчитанный на множество подключений Многопоточный TCP client (QThread и QTcpSocket) Если сервер TCP то и клиент тоже должен быть TCP? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
|
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
|
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11
— это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
|
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11
Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
|
|
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
|
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/
O1rJuneU_ls
https:/ / vkvideo. ru/ video-115721503_456239114
|
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ВВЕДЕНИЕ
Введу сокращения:
аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
|
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi
ветка по-частям.
коммит Create переделка под биомассу. txt
вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
|