|
0 / 0 / 0
Регистрация: 20.09.2011
Сообщений: 14
|
||||||
Многопоточный TCP сервер19.10.2011, 12:43. Показов 9629. Ответов 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? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: реализовать контроль корректности заполнения дат назначения. . .
|
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html
Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
|
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
|
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях.
Задача: при копировании документа очищать определенные реквизиты и табличную. . .
|
|
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git
main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели
8ATzM_2aurI
|
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2.
Задача: запретить редактирование документа, если он открыт у другого пользователя.
/ / . . .
|
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои.
А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
|
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20%
kYBz3eJf3jQ
|