Ну чтож сразу к делу...на данный момент пользуюсь вот такой вот процедурой присваивания proxy TWebbrowser'у:
procedure proxy_go(proxy: string);
var proxy_info : PInternetProxyInfo;
begin
New (proxy_info);
proxy_info^.dwAccessType := INTERNET_OPEN_TYPE_PROXY;
proxy_info^.lpszProxy := PChar(proxy);
proxy_info^.lpszProxyBypass := PChar('');
UrlMkSetSessionOption(INTERNET_OPTION_PROXY, proxy_info, SizeOf(Internet_Proxy_Info), 0);
Dispose(proxy_info);
//proxy_go('127.0.0.1:8888');
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
proxy_go('127.0.0.1:8888');
Webbrowser1.Navigate(edit1.Text);
end;
Дело в том что код рабочий, но мне хотелось бы изменять прокси, ну т.е. брать прокси из memo к примеру и заходить на сайт с данными настройками, но данный код на это не приспособлен, кто с таким сталкивался, посоветуйте что можно сделать?
VeTaL_UA
27.06.2012, 21:02
procedure TForm1.Button1Click(Sender: TObject);
const
i:integer=0;
begin
if i<Memo1.Lines.Count then
begin
proxy_go(Memo1.Lines[i]);
Webbrowser1.Navigate(edit1.Text);
end
else
begin
ShowMessage('proxy zakonchilis');
end;
inc(i);
end;
19955991
27.06.2012, 22:01
proxy_go(Memo1.Lines[i]);
Memo1.Lines.strings[i];
Но не в этом деле, тут сама процедура такая, она не будет менять прокси второй раз, нужно либо динамически каждый раз при смене прокси создавать веб браузер либо найти какой то другой вариант, с динамическим веб браузером пока разобраться не могу))
D.E.Z.E.R.T.I.R
27.06.2012, 22:06
объявляешь: web:Twebbrowser;
внутри цикла:
web:=Twebbrowser.Create;
а в конце цикла
web.Free;
вот тебе и динамический ВебБраузер
Mebius
27.06.2012, 22:13
объявляешь: web:Twebbrowser;
внутри цикла:
web:=Twebbrowser.Create;
а в конце цикла
web.Free;
вот тебе и динамический ВебБраузер
без предка не работоспособен будет на сколько я знаю
procedure TForm1.Button1Click(Sender: TObject);
const
i:integer=0;
begin
if i<Memo1.Lines.Count then
begin
proxy_go(Memo1.Lines[i]);
Webbrowser1.Navigate(edit1.Text);
end
else
begin
ShowMessage('proxy zakonchilis');
end;
inc(i);
end;
веталь, а разве константа изменяется?)
PS создай глобальную переменную которая буде хранить итератор, при первом создании инициализируй, дальше по нужному тебе событию делай иф итератор<Memo1.Lines.Count-1 и выдергивай проксю в строку memo1.linse[итератор] дальше парс подстановка и заход.
иначе обнуляй итератор и останавливай действия
19955991
27.06.2012, 23:21
Всем спасибо! Навели меня на путь истинный)
Еще один вопрос: как удалить потом этот компонент? Или пересоздать
На Wb.Free; ругается, наверное потому что компонент используется
Mebius
28.06.2012, 00:07
Всем спасибо! Навели меня на путь истинный)
Еще один вопрос: как удалить потом этот компонент? Или пересоздать
На Wb.Free; ругается, наверное потому что компонент используется
чем ругается то?
19955991
28.06.2012, 00:17
чем ругается то?
Да все уже, разобрался, работает как часы
Всем огромное спасибо!!! :z: