Как связать класс и мой Winsock?

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Don Leno
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 421
Зарегистрирован: 13.10.2013 (Вс) 14:05

Как связать класс и мой Winsock?

Сообщение Don Leno » 18.04.2021 (Вс) 9:27

Пишу простенький класс для себя. На форме есть Winsock. Winsock должен взаимодействовать с классом. Проблема что он пишется что то вроде обертки(не знаю правильно ли выразил?) для него. То есть:

Код: Выделить всё
'В класс приходится передавать Winsock
MyClass.Host wsk, "vbstreets.ru" ' Это для примера
MyClass.port wsk, 3243
MyClass.Connect wsk


Как сделать в классе изначально привязку моего винсока, чтобы его параметром постоянно не передавать? Есть мысль сделать вроде процедуры Инициализации:

Код: Выделить всё
MyClass.Init wsk' Здесь единожды передаем Winsock
'А дальше просто работаем уже с сабами и свойствами класса
MyClass.Host "vbstreets.ru"
MyClass.port 3232
MyClass.Connect


Я не знаю как это кодом реализовать...

Don Leno
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 421
Зарегистрирован: 13.10.2013 (Вс) 14:05

Re: Как связать класс и мой Winsock?

Сообщение Don Leno » 18.04.2021 (Вс) 11:49

Кажется нашел правильное решение, пните меня если я не прав))

В классе пишем:
Код: Выделить всё
Private wsk as Winsock

Public Sub Init (winsk as Winsock)
   Set wsk=winsk
end Sub

Public Sub Connect()
    wsk.connect Host, Port
End Sub


А после используем в своем коде так:
Код: Выделить всё
MyClass.Init MyWinsock
MyClass.Host="vbstreets.ru"
MyClass.Port=3232
MyClass.Connect

Вроде так. Нет ли ошибок?


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 12

    TopList