Winsock. Опять непойми что:(((

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Bov
Новичок
Новичок
 
Сообщения: 44
Зарегистрирован: 18.08.2005 (Чт) 0:49

Winsock. Опять непойми что:(((

Сообщение Bov » 09.03.2008 (Вс) 21:57

Код: Выделить всё

Private Sub Form_Load()
Winsock1.Protocol = sckTCPProtocol
Winsock1.Connect "www.microsoft.com/index.html", 80
While Not Winsock1.State = 7
DoEvents '
Wend
Parametrs = ""
Winsock1.SendData "GET /www.microsoft.com/index.html" & Parametrs & " HTTP/1.0" & vbCrLf & vbCrLf
End Sub
Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
Dim Data As String
Winsock1.GetData Data
Print Data
End Sub


надо что бы Date вернуло код ошибки (404, 403 и т.д.).. она почему то то ниче не возвращает, то всенгда 404. сорри ещё куда урл то нужно писать, я туда пишу???.. сильно не пинайте плз!

Demonx
Бывалый
Бывалый
 
Сообщения: 237
Зарегистрирован: 25.06.2003 (Ср) 0:08
Откуда: Литва/Висагинас

Сообщение Demonx » 09.03.2008 (Вс) 22:13

Winsock1.Connect "www.microsoft.com/index.html", 80

???
Код: Выделить всё
Winsock1.Connect "www.microsoft.com", 80
Изображение

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 09.03.2008 (Вс) 22:19

Bov
Это не код ошибки. Это код статуса. В случае отсутсвия ошибки, он будет равен 200 (или 206), а не 0, как ты предполагаешь. А запрос, и коннект-стринг - полный бред.

Ты почитай FAQ, и сравни со своим.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Bov
Новичок
Новичок
 
Сообщения: 44
Зарегистрирован: 18.08.2005 (Чт) 0:49

Сообщение Bov » 09.03.2008 (Вс) 22:26

Надо добавь WinSock Control и кнопку. В код формы вставить:

Winsock1.Protocol = sckTCPProtocol 'Установка протокола
Winsock1.Connect "имя_сервера", 80 'подключение через порт 80
While Not Winsock1.State = 7 'Ждем, пока подключится.
DoEvents '
Wend '

Parametrs="параметр1=значение&параметр2=значение" 'сохраняем параметры в 'переменной

Далее все зависит от того, каким методом передавать. Если через метод POST, то:

Winsock1.SendData "POST /адрес_скрипта HTTP/1.1" & vbCrLf
Winsock1.SendData "Content-Type: application/x-www-form-urlencoded" & vbCrLf
Winsock1.SendData "Host: имя_сервера" & vbCrLf
Winsock1.SendData "Content-Length: " & len(Parametrs) & vbCrLf & vbCrLf
Winsock1.SendData Parametrs & vbCrLf

Если через метод GET, то:

Winsock1.SendData "GET /адрес_скрипта?" & Parametrs & " HTTP/1.0" & vbCrLf & vbCrLf

Далее сервер запустит скрипт и передаст данные, еоторые выдаст скрипт, т.е страницу, которая появилась бы в браузере. Если надо принять эти данные, то добавь еще это:

Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
Dim Data As String
Winsock1.GetData Data
End Sub

Точно также... вот ка мне получить его этот статус?....
GET /адрес_скрипта? - что это за адрес скрипта?

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 09.03.2008 (Вс) 22:29

—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.


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

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

Сейчас этот форум просматривают: Yandex-бот и гости: 123

    TopList