|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Delphi - как программно нажать не кнопку, а ссылку но с передачей логина и пароля? |
|
Delphi - как программно нажать не кнопку, а ссылку но с передачей логина и пароля?
|
Пользователь Сообщения: 52 |
Профиль | Отправить PM | Цитировать
доброго времени суток!
цель программы при запуске этой программки: 1-автоматический вход в по лоигну и паролю через веббраузер 2-переход по ссылке 3-нажатие кнопки "разъединить" (при отсутствии кнопки "разъединить" перейти к следующему пункту) 4-нажатие кнопки "соединить" 5-закрытие программки. внизу предоставлен листинг программки собрал по кусочкам в просторах интернета (я непрограммист - я хуже новичка) в котором есть webbrowser и 4 кнопки. кнопка №1 открытие адреса в веббраузере. кнопка №2 заполнение полей логином/паролем и нажатие кнопки вход НО вход непроисходит тоесть несрабатывает нажатие кнопки входа, как быть ума неприложу???????(вопрос №1) кнопка №3 после якобы совершенного входа перехожу по ссылке кнопка №4 нажатие кнопки "Соединить" и самый главный (вопрос№2)- как сделать чтоб эти кнопки срабатывали сами с очередностью допустим в 5 секунд и после автоматического срабатывания последней кнопки программка закрылась сама???? unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, OleCtrls, SHDocVw, StdCtrls; type TForm1 = class(TForm) Button1: TButton; Button2: TButton; Button3: TButton; Button4: TButton; WebBrowser1: TWebBrowser; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button3Click(Sender: TObject); procedure Button4Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin webbrowser1.Navigate('http://192.168.0.1'); end; procedure TForm1.Button2Click(Sender: TObject); var i:integer; html_tag:variant; begin html_tag:=webbrowser1.oleobject.document.forms.item(0).elements; for i:=0 to (html_tag.length-1) do begin if (html_tag.item(i).name='A1') then html_tag.item(i).value:='admin'; if (html_tag.item(i).name='A2') then html_tag.item(i).value:='admin'; if (html_tag.item(i).id='bt_submit') then html_tag.item(i).click; end; end; procedure TForm1.Button3Click(Sender: TObject); begin webbrowser1.Navigate('http://192.168.0.1/index.cgi?menu=w&sub=i'); end; procedure TForm1.Button4Click(Sender: TObject); var i:integer; html_tag:variant; begin html_tag:=webbrowser1.oleobject.document.forms.item(0).elements; for i:=0 to (html_tag.length-1) do begin if (html_tag.item(i).id='uiButtonConnect') then html_tag.item(i).click; end; end; end. |
|
Отправлено: 21:31, 12-04-2011 |
Необычный Сообщения: 4463
|
Профиль | Сайт | Отправить PM | Цитировать sagepro, в Делфи есть компонент - таймер, попробуй использовать его.
|
------- Отправлено: 00:09, 13-04-2011 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Пользователь Сообщения: 52
|
Профиль | Отправить PM | Цитировать Цитата lxa85:
и еще меня очень сильно смущает вот эта строчка в коде: Цитата sagepro:
листинг к чему пытаюсь подключиться: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <title>DIR-320</title> <meta name="date" content="" /> <meta name="generator" content="no generator" /> <meta name="copyright" content="Copyright (C) 2008 D-Link Russia" /> <meta name="keywords" content="DIR-320" /> <meta name="description" content="DIR-320" /> <meta http-equiv="content-type" content="application/xhtml+xml; charset=utf-8" /> <meta http-equiv="pragma" content="no-cache" /> <meta http-equiv="cache-control" content="no-cache" /> <meta http-equiv="content-style-type" content="text/css" /> <meta http-equiv="content-script-type" content="text/javascript" /> <link rel="shortcut icon" href="/favicon.ico" type="image/x-icon" /> <link rel="stylesheet" href="/scripts/login_pc_bcm.css" type="text/css" /> <script type="text/javascript" src="/scripts/common.js"></script> <script type="text/javascript" src="/scripts/login.js"></script> </head> <body onload="javascriptnPageLoad();"> <div id="id_head_logo0"> <div class='fastmenu'> <ul> <li><a>Язык</a><ul><li><a href='index.cgi?menu=&lang=eng'>English</a><li><a href='index.cgi?menu=&lang=rus'>Русский</a></ul></li> </ul> </div> </div> <div id="id_head_logo1"></div> <div id="id_div_messages"> </div> <div id="id_div_main_container"> <form id="id_form_main" method="post" enctype="application/x-www-form-urlencoded" action="index.cgi"> <div id="id_div_login_header"> DIR-320 </div> <div id="id_div_login_input"> <div id="id_div_container_login_input"> Имя пользователя: <input id="A1" name="A1" type="text" maxlength="15" /> <br /> <br /> Пароль: <input id="A2" name="A2" type="password" maxlength="30" /> <br /> <input id="auth" name="auth" type="hidden" value="auth" /> </div> </div> <div id="id_div_login_buttons"> <div id="id_div_container_buttons"> <a id="bt_reset" class="bt" href="#"> Очистить </a> <a id="bt_submit" class="bt" href="#"> Вход </a> </div> </div> </form> </div> </body> </html> в листинге отмечены жирным шрифтом поля которые заполняются программкой и подчеркнута ссылка которую необходимо нажать программно что у меня и НЕ выходит никак.. как решить проблему? листинг под копирку внутри даже смайлик нарисовался).. |
||
Последний раз редактировалось sagepro, 13-04-2011 в 07:19. Причина: дополнение описания Отправлено: 06:55, 13-04-2011 | #3 |
Пользователь Сообщения: 52
|
Профиль | Отправить PM | Цитировать Может такой способ для нажатия ссылки неверный в корне?
проблем бы небыло если бы нужно было просто перейти по ссылке, но вот передача логина и пароля таким образом неосуществится((( |
Отправлено: 06:33, 15-04-2011 | #4 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
[решено] Установка драйверов (нажатие кнопок) | SANIOK_AV | AutoIt | 3 | 05-09-2010 14:13 | |
Автоматическое нажатие 2х кнопок в утилите | ameliss | AutoIt | 1 | 01-08-2010 02:07 | |
[решено] "Отловить" нажатие дополнительных (нестандартных) кнопок мыши | sashadeg | AutoIt | 12 | 29-03-2010 17:52 | |
Как произвести нажатие кнопок мыши без функций AutoIT и сторонних программ. | CyberStyLe | AutoIt | 11 | 08-02-2010 14:22 | |
[решено] WLE3P.EXE определяется как hiden object, частота активности каждые 33 секунды, как по | dima1981 | Хочу все знать | 4 | 23-06-2009 15:01 |
|