![]() |
|
Модераторы: feodorv |
![]()
|
|
| Mal Hack |
|
|||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: нет Всего: 261 |
Доброе время суток. Стоит задача сделать программу, которая отсылает по TCP команду устройству (само устройство работает и к нашей задачи отношения не имеет) и читает ответ.
Почитал в сети про наличие socket API и Windows Socket API. Между ними соответственно есть отличия. Вопрос собственно такой, а имеется ли возможность стандартными средствами языка С++ реализовать необходимое взаимодействие? Еще интересует вопрос возможности применения createHandle для TCP. Хотя последнее мне кажется маловероятным. Спасибо. |
|||
|
||||
| jonie |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5613 Регистрация: 21.8.2005 Где: Владимир Репутация: 5 Всего: 118 |
стандартными 100% нет. С++ ничего не слышал даже про сеть или сокеты.
есть много библиотек для работы с сокетами на более абстрактном уровне, нежели сокеты. например ACE Framework (говорят крутая, тут чет писали про нее), boost ... вот их и используйте... если задача разовая и не сложная, то можно свою обертку над сокетами быстро соорудить (велосипед). -------------------- Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет... |
|||
|
||||
| MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 6 Всего: 207 |
Mal Hack,
openSSL и абстракция I/O BIO + получите возможность использования SSL/TLS Добавлено @ 23:24
Это сообщение отредактировал(а) MAKCim - 1.7.2008, 23:40 -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
| Mal Hack |
|
|||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: нет Всего: 261 |
||||
|
||||
| MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 6 Всего: 207 |
-------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
| DRUID3 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 463 Регистрация: 20.6.2005 Где: Kyyiv Репутация: нет Всего: 9 |
Как вариант - писать на Qt. Я бы именно так и поступил.
-------------------- Every time if you use Linux, you are joined to the communism... практика - критерий истины ... отделенной от нас пропастью субъективного восприятия... |
|||
|
||||
| Lazin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3820 Регистрация: 11.12.2006 Где: paranoid oil empi re Репутация: 5 Всего: 154 |
asio library, поддержка SSL/TLS + по многим отзывам - одна из самых качественных кросс платформенных библиотек...
|
|||
|
||||
| MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 6 Всего: 207 |
ну и зря Добавлено через 2 минуты и 37 секунд через openSSL openSSL быстрее -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
| DRUID3 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 463 Регистрация: 20.6.2005 Где: Kyyiv Репутация: нет Всего: 9 |
-------------------- Every time if you use Linux, you are joined to the communism... практика - критерий истины ... отделенной от нас пропастью субъективного восприятия... |
|||
|
||||
| Mal Hack |
|
|||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: нет Всего: 261 |
Qt отменяется, т.к. он дает лишь поверхностный доступ к сокету соединения, что плохо, т.к. надо контролировать на уровне ниже...
|
|||
|
||||
| MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 6 Всего: 207 |
а чего обосновывать то? в первую очередь QT - это графическая библиотека использовать ее ради сокетов все равно что использовать танк для поездок на работу -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
| Mal Hack |
|
|||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: нет Всего: 261 |
MAKCim, как эту заразу подружить с VS.NET?
Да и в линуксе, какой доп рараемтр нужно указать чтоб он увидел openssl/bio.h В студии сначала компили, давал ему на съедение libeay32.lib. Потом перестал. И ни в какую.. Пишет мол libeay32.dll build with no debug information.... |
|||
|
||||
| jonie |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5613 Регистрация: 21.8.2005 Где: Владимир Репутация: 5 Всего: 118 |
остальной текст непонял. -------------------- Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет... |
|||
|
||||
| Mal Hack |
|
|||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: нет Всего: 261 |
Я не знаю, что тут нормального, но линковщик собираеть ее с приложением - отказывается. Глобально зачача - заставить студию и G++ (линукс) компилить мою программу с либой OpenSSL. Как я не пытался (в винде только, правда), у меня ничего не вышло. Точнее перестало выходить... |
|||
|
||||
| MAKCim |
|
||||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 6 Всего: 207 |
как устанавливал OpenSSL? если из исходников, то какой --prefix указывал? по-умолчанию он /usr/local/ssl поэтому инклуды будут лежать в /usr/local/ssl/include/openssl иначе в $DIR/include/openssl, где $DIR - ключ в --prefix если не из исходников, то возможно не был установлен пакет *openssl-devel или по-умолчанию инклуды были записаны в каталог, который не видит компилятор попробуй через
их поискать как найдешь, используй ключ -I<путь к openssl> при компиляции релиз компилируешь или дебаг-версию? -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
||||
|
|||||
| Mal Hack |
|
|||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: нет Всего: 261 |
В лине установил пакет из репозитория (debian testing). С -dev пометкой в том числе. <openssl/bio.h> - находится, а вот библиотека, в которой сами функции - нет. Пишет undefined reference to BIO_new_connect. Но тут я ничего не отлаживал. В Винде. Скачал отсюда http://www.slproweb.com/products/Win32OpenSSL.html Win32 OpenSSL v0.9.8h. Установил. Как сказано в хелпе, перенес из lib в lib студии, из include в include в студии. В system32 кинул libeay32.dll и sseay.dll. Если в настройках проекта не указать libeay32.lib или libeay32MT.lib или libeay32MD.lib или соответствующие либы для дебага с "d", то будет undefined reference to BIO_new_connect. если указать, то как я писал выше, после линковки, при запуске (что дебаг, что релиз версии) будет: libeay32.dll build with no debug information.... + программное снятие. И то и то =) Это сообщение отредактировал(а) Mal Hack - 7.7.2008, 12:06 |
|||
|
||||
| Mal Hack |
|
|||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: нет Всего: 261 |
На винде победил...
Надо было либы студии скармливать от g версии, а не от h.... |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Сети | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |