Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Как создать простенькое "клиент-сервер" приложение Добавлено: 19.12.03 13:26  

Автор вопроса:  Razzz
  • Помогите создать простое клиент-сервер приложение.
  • Все исходники которые я скачивал мне просто непонятны.
  • А хочеться исходник с простым кодом с использованием winsock
  • контрола.

Ответить

  Ответы Всего ответов: 6  

Номер ответа: 1
Автор ответа:
 KAM



ICQ: 190197618 

Вопросов: 25
Ответов: 97
 Профиль | | #1 Добавлено: 19.12.03 14:21

Ну всё просто. Создай проект и две формы (а можно и два проекта). Кинь на обе формы по одному Winsock'у и по два текстовых поля - txtInput и txtOutput.Теперь добавляем следующий код (для сервера):

Private Sub Form_Load()
 Winsock1.LocalPort = 100    'Указываю порт, через который будет проходить обмен данными
                              'между клиентом и сервером
 Winsock1.Listen              'слушать порт
End Sub

Private Sub txtOutput_Change()
 Winsock1.SendData txtOutput.Text  'Отпралять данные
End Sub

Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
Dim Data As String
 Winsock1.GetData Data  'Получить данные с клиента в переменную Data
 txtInput.Text = Data   'Вывести содержимое переменной Data в txtInput
End Sub

Private Sub Form_Load()
 Winsock1.LocalPort = 100    'Указываю порт, через который будет проходить обмен данными
                              'между клиентом и сервером
 Winsock1.Listen              'слушать порт
End Sub

Private Sub txtOutput_Change()
 Winsock1.SendData txtOutput.Text  'Отпралять данные
End Sub

Private Sub Winsock1_ConnectionRequest(ByVal requestID As Long)
 If Winsock1.State <> sckClosed Then Winsock1.Close  'Если есть соединение, то закрыть его
  Winsock1.Accept requestID   'Принять запрос
End Sub

Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
Dim Data As String
 Winsock1.GetData Data  'Получить данные с клиента в переменную Data
 txtInput.Text = Data   'Вывести содержимое переменной Data в txtInput
End Sub

И код для клиентской формы:

Private Sub Form_Load()
 Winsock1.Connect "127.0.0.1", 100  Подключиться к укзанному хосту (127.0.0.1), к сотому порту
End Sub

Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
Dim Data As String
 Winsock1.GetData Data  'Получить данные с клиента в переменную Data
 txtInput.Text = Data   'Вывести содержимое переменной Data в txtInput
End Sub

Private Sub txtOutput_Change()
 Winsock1.SendData txtOutput.Text  'Отпралять данные
End Sub

Ответить

Номер ответа: 2
Автор ответа:
 DaSharm



ICQ: 780477 

Вопросов: 72
Ответов: 1297
 Web-сайт: dasharm.com
 Профиль | | #2
Добавлено: 19.12.03 17:36

Мой сайт пока не готов, но первая статья єсть:

http://www5.domaindlx.com/dasharm/w1.htm

Вторая статья:

http://www5.domaindlx.com/dasharm/w2.htm

Исходники к статьям на мыло пришлю, если будет нужно.

Надеюсь все будет понятно.

Ответить

Номер ответа: 3
Автор ответа:
 Александр



Разработчик Offline Client

ICQ: 204034 

Вопросов: 106
Ответов: 1919
 Профиль | | #3 Добавлено: 19.12.03 20:05

Да и на этом сайте полно таких примеров - даже есть один мой (наверно уже давно в архиве).

Ответить

Номер ответа: 4
Автор ответа:
 Sharp


Лидер форума

ICQ: 216865379 

Вопросов: 106
Ответов: 9979
 Web-сайт: sharpc.livejournal.com
 Профиль | | #4
Добавлено: 20.12.03 21:43

Не используй WinSock Control! Не надо! Юзай API!

Ответить

Номер ответа: 5
Автор ответа:
 DaSharm



ICQ: 780477 

Вопросов: 72
Ответов: 1297
 Web-сайт: dasharm.com
 Профиль | | #5
Добавлено: 20.12.03 21:50
Sharp, это не правильно!!!Начинать нужно с Винсока!!!Обязательно!!!Я, например, пока делал сервер без него (АПИ ф-циями), то чуть не скончался...Даже сейчас немного глючит с приемом соединения, правда работает лучше чем винсок: на один сокет может принять сколько угодно соединений.

Ответить

Номер ответа: 6
Автор ответа:
 Sharp


Лидер форума

ICQ: 216865379 

Вопросов: 106
Ответов: 9979
 Web-сайт: sharpc.livejournal.com
 Профиль | | #6
Добавлено: 20.12.03 23:27

Дык, зачем начинать с Винсока, ежели есть голова на плечах? Лучше помучаться с АПИ, да подольше (знаешь, сколько я с функциями реестра в 10-м классе парился???), зато потом все будет архизамечательно. К тому же Инет есть, компонентов не надо. А учить лишнее - имхо, напрасный труд.

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам