WinSock без формы

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

WinSock без формы

Сообщение XairOn » 16.10.2004 (Сб) 7:28

Здравствуйте. Не так давно на этом форуме обсуждалсась тема как использовать WinSock без формы, я воспользовался одним из
предложений, а именно: Winsock описывается в модуле класса и там же располагаются все процедуры: Connect, ConnectionRequest,
DataArrival и т.д. На моем компе все работает отлично, когда я попытался запустить программу на другом компе (Windows 2000
Pro там установлена) вылезла ошибка: Can't create object (или что-то вроде того, но какой-то объект программа не могла создать это точно). Я вот думаю, может стоит DLL'ку winsock'а подключить, потому что у меня там только вот это:
Код: Выделить всё
Private WithEvents Sock As MSWinsockLib.Winsock

- больше в разделе описаний ничего похожего на winsock вообще нету. Подскажите в какой именно DLL лежат функции winsock'а, что подключать надо и как?!

GM
programador
programador
 
Сообщения: 1427
Зарегистрирован: 24.06.2003 (Вт) 15:56
Откуда: 194.67.52.100

Сообщение GM » 16.10.2004 (Сб) 7:46

Для работы с Winsock нужен mswinsck.ocx. Скопируй его в системную папку, и далее в командной строке введи:
regsvr32 mswinsck.ocx

Должно работать :wink:
الفيجوال بيسك الرابح

xenomorph
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 508
Зарегистрирован: 18.04.2004 (Вс) 11:41
Откуда: это не важно - на сегодня у меня есть алиби ...

8)

Сообщение xenomorph » 16.10.2004 (Сб) 8:51

А почему без формы если не секрет?

Открою большую тайну 8)
даже используя АПИ тебе всё равто прийдёться делать окно, субклассировать его для перехвата сообщений от сокета и т.п. ЕстеБственно окно будет невидимое 8)

Вопрос - а не проще ли делать его на форме 8) и с компонентом?

Вариант 2 выпросить у меня 3 (!) варианта АПИ сокета в виде классов 8)
--
Есть только один случай когда компонент - это нож в горло, а лишний килобайт можеи означать 15 ещё минут страха 8)))
Если да то мыль 8)
... Dpkjvfnm dc`xnj itdtkbnmcz, f tckb yt itdtkbnmcz hfcitdtkbnm b dpkjvfnm !!! ...

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 16.10.2004 (Сб) 10:55

Винсоковые функции бывают синхронные, а бывают асинхронные... Синхронным окно зачем? :)
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

XairOn
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 324
Зарегистрирован: 19.07.2004 (Пн) 20:20
Откуда: Irkutsk region

Сообщение XairOn » 16.10.2004 (Сб) 13:22

Хорошо с окном всё понятно, а вот компонент я использовать не хочу потому, что придется его(OCX) за собой таскать и регистрировать повсюду в EXE'шник его тоже никак не запихнуть как я понял. Вобщем суть вопроса в том, как бы сделать что бы прога была независимой от всяких там OCX и DLL, можно ли сделать одним EXE файлом всё? Я вобщем-то ради этого и решил через Class Module делать, думал прога к DLL winsock'а будет обращаться и регистрировать ничего не надо будет и за собой таскать.

Посоветуйте как быть???

xenomorph
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 508
Зарегистрирован: 18.04.2004 (Вс) 11:41
Откуда: это не важно - на сегодня у меня есть алиби ...

полдо ..., полдо ..., полдовил!

Сообщение xenomorph » 16.10.2004 (Сб) 13:24

8) 100%
но кто их юзает ??? 8)
... Dpkjvfnm dc`xnj itdtkbnmcz, f tckb yt itdtkbnmcz hfcitdtkbnm b dpkjvfnm !!! ...

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 16.10.2004 (Сб) 15:34

Изображение

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 16.10.2004 (Сб) 15:37

А мне пофигу... Всё равно, понадобится - напишу свой... Такой вот я нехороший человек...
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

ALX_2002
Мега гуру
Мега гуру
 
Сообщения: 2056
Зарегистрирован: 25.11.2002 (Пн) 20:03

Сообщение ALX_2002 » 16.10.2004 (Сб) 16:17

Челы !!! Не пугайте меня !! С какого такая надобность регить OCX

Создания объекта Winsock таким образом пашет 100%

1) Set wsock = CreateObject("MSWinsock.Winsock")
2) Set wsock = CreateObject("MSWinsock.Winsock.1")

И дальше всё обрабатывается БЕЗ КАКОЙ ЛИБО ФОРМЫ

:shock: :shock: :shock: :?: :?: :?: :?: :?:

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 16.10.2004 (Сб) 16:26

ALX_2002, ты заблуждаешься.
Разрегистрируй mswinsck.ocx и посмотри, что получится.
Изображение

ALX_2002
Мега гуру
Мега гуру
 
Сообщения: 2056
Зарегистрирован: 25.11.2002 (Пн) 20:03

Сообщение ALX_2002 » 16.10.2004 (Сб) 16:35

2 tyomitch: А на хрен разрегивать то ??? Логично, что тогда пахать не будет, но так то он в системе зареген по умолчанию....

На крайняк через Project -> References уго можно к проекту подрубить и тогда по идее вообще класть на то, что зареген он или нет ?

Али я чё то не знаю... Но для меня это шок ?!

P.S Каким же тогда макаром мой сетевой троян сидит у 14 человек моей сети и преспокойно выполняет любые команды ??? :?: :roll:

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 16.10.2004 (Сб) 16:37

Фигушки...
ocx есть там, где стоит VB. Или там, где его поставила для себя какая-то прога. А так - его нет, а есть wsock32.dll
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

ALX_2002
Мега гуру
Мега гуру
 
Сообщения: 2056
Зарегистрирован: 25.11.2002 (Пн) 20:03

Сообщение ALX_2002 » 16.10.2004 (Сб) 16:39

Ну вы что хотите сказать, что у всех челов, которым я сунул свою прогу стоит VB... Там люди сидят, которые о VB и не слышали..
:shock:

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 16.10.2004 (Сб) 16:40

ALX_2002 писал(а):На крайняк через Project -> References уго можно к проекту подрубить и тогда по идее вообще класть на то, что зареген он или нет ?

Да нет, конечно. Если не зарегистрирован - не будет работать, хоть ты из себя выйди.

ALX_2002 писал(а):Али я чё то не знаю... Но для меня это шок ?!

Очевидно, чего-то не знаешь ;-)

ALX_2002 писал(а):P.S Каким же тогда макаром мой сетевой троян сидит у 14 человек моей сети и преспокойно выполняет любые команды ??? :?: :roll:

У всех них - оказалось, что уже есть Студия, либо проги, юзающие Винсок. А вот XairOn не повезло так же, как тебе...
Изображение

ALX_2002
Мега гуру
Мега гуру
 
Сообщения: 2056
Зарегистрирован: 25.11.2002 (Пн) 20:03

Сообщение ALX_2002 » 16.10.2004 (Сб) 16:43

2 all: Во странно.. Пойду разбираться и опрашивать своих... А лучше к ним в гости загляну... Пивка попью.... Разберусь чё к чему...

:drunken:

ALX_2002
Мега гуру
Мега гуру
 
Сообщения: 2056
Зарегистрирован: 25.11.2002 (Пн) 20:03

Сообщение ALX_2002 » 16.10.2004 (Сб) 19:03

Челы... Простите меня глупого !!!

Реально... У меня так оно и есть - я ж забыл у меня в папке этот OCX и лежит, а при копировании на целевой комп он туда и кидается и регится...

Я дурак, забыл об этом. У меня всё это в модуле отдельном сунуто....

Короче - БЫЛ НЕ ПРАВ.

Признан виновным и разжалован - в рядовые.. ::(:

XairOn
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 324
Зарегистрирован: 19.07.2004 (Пн) 20:20
Откуда: Irkutsk region

Сообщение XairOn » 16.10.2004 (Сб) 20:01

Господа хорошие, вы чего-то разогнались, я за вами не успеваю. Кто-нибудь может доступным языком объяснить: в принципе это возможно или нет - использовать функции winsock'а без OCX'ов и т.д. короче надо что бы прога работала на любом компе даже с неустановленным VB и незарегистрированным OXC'ом. И вообще скажите, зачем кому-то описывать winsock, как класс, какие от этого плюсы??? Я думал, что мне это поможет избавиться от регистрации OXC'ов и таскания их за собой. Я что, был неправ???

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 16.10.2004 (Сб) 20:06

1. Это возможно.
2. Ты был прав.
3. Пройдись по ссылкам, что я накидал на первой странице, там подходящие тебе классы есть.
Изображение

ta_gena
Бывалый
Бывалый
 
Сообщения: 264
Зарегистрирован: 30.10.2002 (Ср) 12:18
Откуда: Russia

Сообщение ta_gena » 17.10.2004 (Вс) 2:55

Это возможно, если написать свой WinSock и втыкать его в свою прогу.
Но по-моему, намного проще таскатьс собой dll и ocx.

XairOn
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 324
Зарегистрирован: 19.07.2004 (Пн) 20:20
Откуда: Irkutsk region

Сообщение XairOn » 17.10.2004 (Вс) 4:58

tyomitch писал(а):1. Это возможно.
2. Ты был прав.
3. Пройдись по ссылкам, что я накидал на первой странице, там подходящие тебе классы есть.


Спасибо большое, это я и хотел услышать!

xenomorph
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 508
Зарегистрирован: 18.04.2004 (Вс) 11:41
Откуда: это не важно - на сегодня у меня есть алиби ...

Насчёт пивка ...

Сообщение xenomorph » 17.10.2004 (Вс) 13:44

Хорошаф идея 8).

Винсоки на АПИ бывают разны ;) Низкоскоростные, белые, красные 8)
Есть неработающие ;).

Небальшое но ВАЖНОЕ замечание -
Я имел дело с такой ситуацией -
Workstation NT 4.0 - c _ПОЛНОСТЬЮ_ закрытым доступом на
диск кроме рабочего стола
+ Распред доступ
+ Закрытый реестр
+ Злой админ с дубинкой сзади ...

Вообщем, системы _сильно_ оберегались от любителей халявы 8).

Компонент лежащий рядом с прогой нормально функционировал ...
... Dpkjvfnm dc`xnj itdtkbnmcz, f tckb yt itdtkbnmcz hfcitdtkbnm b dpkjvfnm !!! ...


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

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

Сейчас этот форум просматривают: Google-бот, PetalBot и гости: 18

    TopList  
cron