Avatar billede dallan2007 Nybegynder
31. august 2009 - 12:17 Der er 13 kommentarer og
2 løsninger

TWebbrowser og genforsøg?

Hej,

Hvordan dælen for man webbrowseren til at forsøge igen og igen hvis den pågældende side ikke svarer?

E.g.

while not WebBrowser1DocumentComplete do
Webbrowser1.navigate('http://www.eksperten');

(bare et ekssempel.)
Avatar billede vallemanden Nybegynder
31. august 2009 - 12:28 #1
a := 'http://www.experten.dk';
  try
    idhttp1.Get(a);
  except
  end;
Avatar billede vallemanden Nybegynder
31. august 2009 - 12:28 #2
agg sorry
så ikke lige det var med webbrowser
Avatar billede dallan2007 Nybegynder
31. august 2009 - 12:31 #3
hmm

vil det også virke med webbrowseren?

try
Webbrowser1.navigate('http://www.eksperten.com/');
  except
  end;

vil den ikke kun forsøge 1 gang og hvis det ikke lykkes så give op?
Avatar billede vallemanden Nybegynder
31. august 2009 - 12:38 #4
jo men så lav en løkke, ikke pænt med det vil virke
Avatar billede dallan2007 Nybegynder
31. august 2009 - 12:43 #5
Kan man ikke lave noget med try.. untill i stedet?
Avatar billede kroning Nybegynder
31. august 2009 - 13:18 #6
Hvis det stadig kun skal bruges til at finde links så vil jeg foreslå at du glemmer webbrowser og bruger idhttp og så selv løber teksten igennem efter links.
Avatar billede dallan2007 Nybegynder
31. august 2009 - 13:29 #7
@kroning

Men vil det samme problem ikke bare opstå med idhttp? Kan man få idhttp til at blive ved med at forsøge en side i uendelighed eller X antal gange?
Avatar billede dallan2007 Nybegynder
31. august 2009 - 13:35 #8
Well, jeg tror jeg nøjes med en anden løsning. I må gerne begge smide et svar.
Avatar billede kroning Nybegynder
31. august 2009 - 13:36 #9
Ja det kan gøres som vallemanden skrev, utestet:

function hent : boolean
begin
result:=true;
a := 'http://www.experten.dk';
  try
    idhttp1.Get(a);
  except
  result:=false;
  end;
end;

begin
repeat
until hent;
end;
Avatar billede vallemanden Nybegynder
31. august 2009 - 16:47 #10
b
Avatar billede kroning Nybegynder
31. august 2009 - 18:17 #11
Fisk
Avatar billede dallan2007 Nybegynder
31. august 2009 - 20:57 #12
kroning, det blev vist til en kommentar :)

Er der forresten nogen af jer der kan fortælle hvad man skal "release" for at kører idhttp.get en gang til?

Dette crasher hvis jeg først trykker på button1 og derefter på button2:

procedure TForm1.Button1Click(Sender: TObject);
var
a: string;
begin
a := idhttp1.get('http://www.eksperten.dk');
idhttp1.free;
end;

procedure TForm1.Button2Click(Sender: TObject);
var
a: string;
begin
a := idhttp1.get('http://www.eksperten.dk');
idhttp1.free;
end;

Den første kan den godt tage, men ikke den næste.
Avatar billede vallemanden Nybegynder
31. august 2009 - 21:05 #13
jeg køre den 1gang hver 5 min i en timer og jeg releaser ikke, og programmet køre 24/7
Avatar billede vallemanden Nybegynder
31. august 2009 - 21:05 #14
prøv at fjerne .free
Avatar billede kroning Nybegynder
31. august 2009 - 21:12 #15
ok
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester