Программное нажатие на кнопку формы в Webbrowser

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

Программное нажатие на кнопку формы в Webbrowser

Сообщение agat344 » 29.02.2012 (Ср) 18:18

Не работает программное нажатие на кнопку "Submit" на форме в Webbrowser в данном конкретном случае.

Загружаю в Webbrowser страницу http://giba.ru/add.php
Делаю автозаполнение и нажимаю кнопку отправки формы.

Код: Выделить всё
WebBrowser1.Document.Forms(0).All("nick").Value = "12345"
WebBrowser1.Document.Forms(0).All("city").Value = "12345"
WebBrowser1.Document.Forms(0).All("addr").Value = "12345"
WebBrowser1.Document.Forms(0).All("phone").Value = "12345"
WebBrowser1.Document.Forms(0).All("email").Value = "12345"
WebBrowser1.Document.Forms(0).All("subj").Value = "12345"
WebBrowser1.Document.Forms(0).All("msg").Value = "12345"
WebBrowser1.Document.Forms(0).All("secretcode").Value = "12345"
WebBrowser1.Document.Forms(0).submit


А она ругается в строке отправки ("Forms(0).submit") и пишет - "Object doesn't support this property or method".

Самое интересное, что большинство форм работает, а эта никак не хочет.
Как решить проблему?

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

Re: Программное нажатие на кнопку формы в Webbrowser

Сообщение Хакер » 29.02.2012 (Ср) 18:23

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

agat344
Начинающий
Начинающий
 
Сообщения: 18
Зарегистрирован: 22.09.2003 (Пн) 15:57

Re: Программное нажатие на кнопку формы в Webbrowser

Сообщение agat344 » 29.02.2012 (Ср) 18:57

Спасибо. Но мне нужно решение именно этой проблемы, так как раньше делал всё используя Winsocks, но со временем обрабатывать все цокеты и Java-скрипты стало труднее, а в WebBrowser это делает сам браузер.

Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 29.02.2012 (Ср) 19:20

Не знаю, есть ли этот метод в VB6, но попытаться можно:
Код: Выделить всё
WebBrowser1.Document.Forms(0).InvokeMember("Submit")

agat344
Начинающий
Начинающий
 
Сообщения: 18
Зарегистрирован: 22.09.2003 (Пн) 15:57

Re:

Сообщение agat344 » 29.02.2012 (Ср) 19:29

Qwertiy писал(а):Не знаю, есть ли этот метод в VB6, но попытаться можно:
Код: Выделить всё
WebBrowser1.Document.Forms(0).InvokeMember("Submit")


Нет, пишет тоже самое. Скорее всего дело не в методе, а в данных.

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

Re: Программное нажатие на кнопку формы в Webbrowser

Сообщение Хакер » 29.02.2012 (Ср) 20:01

Qwertiy писал(а):Не знаю, есть ли этот метод в VB6, но попытаться можно:

Бред. Во-первых, в VB для этих целей есть As Object. Во-вторых, в VB для этих целей есть CallByName.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 02.03.2012 (Пт) 7:35

Хакер писал(а):
Qwertiy писал(а):Не знаю, есть ли этот метод в VB6, но попытаться можно:

Бред. Во-первых, в VB для этих целей есть As Object. Во-вторых, в VB для этих целей есть CallByName.

В-третьих, я же сказал, что не знаю. А в-четвёртых, это работающий код на VB.NET, правда, конкретно с этим сайтом не проверял.

agat344
Начинающий
Начинающий
 
Сообщения: 18
Зарегистрирован: 22.09.2003 (Пн) 15:57

Re: Программное нажатие на кнопку формы в Webbrowser

Сообщение agat344 » 02.03.2012 (Пт) 8:15

Пока сообразил только так :

Код: Выделить всё
For i = 0 To WebBrowser1.Document.Forms(0).elements.length - 1
    If WebBrowser1.Document.Forms(0).elements(i).Type = "submit" Then
        WebBrowser1.Document.Forms(0).elements(i).Click
        Exit For
    End If
Next i


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

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

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

    TopList