powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / WinSocket на Visal C++
15 сообщений из 15, страница 1 из 1
WinSocket на Visal C++
    #33504062
Belevern
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всю свою жизнь я программировал на Borland C++ Builder, Borland C++ (из С++ только на этом). И вот я в нём разочаровался. Решил перейти на Visual C++. Но не понял как там сделать сокеты. Т.е. в билдере это был такой компонент как ServerSocket и ClientSocket. Можите мне на примере простейшей программе написать как это выглядело бы в Visual C++? Т. е. чтобы там было видно как прослушивать порт, как принимать данные, как отправлять их, как подключаться.
Зараннее спасибо.
...
Рейтинг: 0 / 0
WinSocket на Visal C++
    #33504105
Barte
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BelevernВсю свою жизнь я программировал на Borland C++ Builder, Borland C++ (из С++ только на этом). И вот я в нём разочаровался. Решил перейти на Visual C++. Но не понял как там сделать сокеты. Т.е. в билдере это был такой компонент как ServerSocket и ClientSocket. Можите мне на примере простейшей программе написать как это выглядело бы в Visual C++? Т. е. чтобы там было видно как прослушивать порт, как принимать данные, как отправлять их, как подключаться.
Зараннее спасибо.

Привет.
Во-первых, в сети есть много документации на эту тему.
Вот: www.codenet.ru www.sources.ru

Во-вторых, ну я конечно думаю Вы сами знаете, но, напишу. В Отличие от Buildera в VS C++ всё надо писать ручками, то есть нету таких ActivX компонентов которые можно на диалоге разместить и у видеть все их методы. Есть класс который надо самому реализовать.
...
Рейтинг: 0 / 0
WinSocket на Visal C++
    #33504117
Belevern
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дамс... я это уже понял. Я даже не знаю как называеться класс сокетов: WinSock не подходит. Щас поищу...
...
Рейтинг: 0 / 0
WinSocket на Visal C++
    #33504130
Barte
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BelevernДамс... я это уже понял. Я даже не знаю как называеться класс сокетов: WinSock не подходит. Щас поищу...

В MSDN'e всё есть класс CSocket.
...
Рейтинг: 0 / 0
WinSocket на Visal C++
    #33504148
Barte
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CSocet это класс из библиотеки классов MFC. Но если хочется чтобы без MFC есть
такой модуль socket.h Можно с ним работать.
...
Рейтинг: 0 / 0
WinSocket на Visal C++
    #33504171
Belevern
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всё равно плохо понимаю... можно всё таки небольшой примерчик?
...
Рейтинг: 0 / 0
WinSocket на Visal C++
    #33504193
Belevern
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Напишите пожалуйста примерчик... Буду очень благодарен
...
Рейтинг: 0 / 0
WinSocket на Visal C++
    #33504207
Barte
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BelevernВсё равно плохо понимаю... можно всё таки небольшой примерчик?

Чувак, если ты плохо понимаешь, то что написано в документации, то купи книгу "Socet для чайников" если такая есть!!! Как ты в Buildere работал всю свою жизнь, если тут не можешь разобрать материал который тебе дали? Прости меня но у меня есть работа, а ты хочешь чтобы тебя учили, ты должен сам учится. :)
...
Рейтинг: 0 / 0
WinSocket на Visal C++
    #33504212
Belevern
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я разбираюсь... А по ходу этого говорю что ещё не разобрался. 8-) Вот и прошу примерчик, т.к. с ним будет проще.
...
Рейтинг: 0 / 0
WinSocket на Visal C++
    #33504249
_Балтика
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
BelevernЯ разбираюсь... А по ходу этого говорю что ещё не разобрался. 8-) Вот и прошу примерчик, т.к. с ним будет проще.В MSDN-е же куча примеров есть. Вот, нпример, прстейшая заготовка для сервера:
MSDN
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
#include <stdio.h>
#include "winsock2.h"

void main() {
  //-----------------------------------------
  // Declare and initialize variables.
  WSADATA wsaData;
  SOCKET ListenSocket, AcceptSocket;
  sockaddr saClient;
  int iClientSize = sizeof(saClient);
  u_short port =  27015 ;
  char* ip;
  sockaddr_in service;

  //-----------------------------------------
  // Initialize Winsock.
  WSAStartup(MAKEWORD( 2 , 2 ), &wsaData);

  //-----------------------------------------
  // Create a listening socket.
  ListenSocket = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);

  //-----------------------------------------
  // Set up the sock addr structure that the listening socket
  // will be bound to. In this case, the structure holds the
  // local IP address and the port specified.
  service.sin_family = AF_INET;
  service.sin_port = htons(port);
  hostent* thisHost;
  thisHost = gethostbyname("");
  ip = inet_ntoa (*(struct in_addr *)*thisHost->h_addr_list);
  service.sin_addr.s_addr = inet_addr(ip);

  //-----------------------------------------
  // Bind the listening socket to the IP address.
  // and port number specified by the sockaddr structure.
  bind(ListenSocket, (SOCKADDR *) &service, sizeof(SOCKADDR));

  //-----------------------------------------
  // Make the listening socket listen for incoming
  // connection requests.
  listen(ListenSocket,  1 );
  printf("Listening...\n");

  //-----------------------------------------
  // Accept an incoming connnection request on the
  // listening socket and transfer control to the 
  // accepting socket.
  AcceptSocket = WSAAccept(ListenSocket, &saClient, &iClientSize, NULL, NULL);

  //-----------------------------------------
  // Clean up and quit. At this point, the application could
  // handle data transfer on the socket, or other socket
  // functionality.
  WSACleanup();
  return;
}
...
Рейтинг: 0 / 0
WinSocket на Visal C++
    #33504307
Belevern
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Млин... обнаружил проблемку: Visual C++ 8 с этим не работпет... т.е. пишет кучу Linking error'ов и не запускаеться... фигово.
...
Рейтинг: 0 / 0
WinSocket на Visal C++
    #33504418
_Балтика
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
BelevernМлин... обнаружил проблемку: Visual C++ 8 с этим не работпет... т.е. пишет кучу Linking error'ов и не запускаеться... фигово.Подключи Ws2_32.lib
...
Рейтинг: 0 / 0
WinSocket на Visal C++
    #33504678
ens
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Бросай Visual C++ иди в Unix
там все круче...
...
Рейтинг: 0 / 0
WinSocket на Visal C++
    #33506308
Lepsik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Barte В Отличие от Buildera в VS C++ всё надо писать ручками, то есть нету таких ActivX компонентов которые можно на диалоге разместить и у видеть все их методы. Есть класс который надо самому реализовать.

В отличии от VC в Builder все компоненты не ActiveX, а с исходными кодами.

не нравится родной компонент - берешь чужой или пишeшь свой код.
...
Рейтинг: 0 / 0
WinSocket на Visal C++
    #33506336
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Belevern...

Для того уровня программирования, который выбрали вы
непринципиально, на чем писать. Если вы отказываетесь
от MFC в пользу чистого API, тогда возникает вопрос.
А в чем вы РАЗОЧАРОВАЛИСЬ ? Неужели вы не могли
в BCB запрограммировать сокет на низком уровне?

Или я чет-не понял?
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / WinSocket на Visal C++
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]