Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

Otvaranje linkova sa ShellExecute API-jem. Problem.

  • 2 odgovora
  • 3.222 pregleda

Najnovija ↓

Otvaranje linkova sa ShellExecute API-jem. Problem. 29.07.2007. u 17:37 · pre 234 meseca #1
Imam spisak linkova u Memo1 i hocu sve da ih otvorim uz shellexecute. Ne znam drugi nacin.
Znaci, u memo1 imam na primer:
http://www.yahoo.com
http://www.google.com
http://www.gmail.com

Code:

for i:=0 to memo1.Lines.Count -1 do
  begin
    if pos('http://',memo1.Lines.Strings[i]) > 0 then
    begin
      //shellexecute(0,'open',pchar(defaultwebbrowser),nil,nil,SW_SHOWNORMAL);
      shellexecute(0,'open',pchar(memo1.Lines.Strings[i]),nil,nil,SW_SHOWNORMAL);
    end;


Web browser mi je mozilla. Ako nema ni jedan otvoren proces mozilla.exe, program otvori tri ali se samo zadnji link ucituje a ostalo je blank.
Jos veci problem je kad postoji otvoren neki prozor web browsera pa program u okviru tog prozora otvori samo poslednji link. On ih kao krene otvarati ali se sve zavrsi na zadnjem linku.

Ima li neki drugi nacin da se otvori web page? Ima li neko resenje za ovaj gore kod? Linijom koja je u komentaru sam pokusao da otvorim proces ali ni na taj nacin ne radi kako treba jer se browser otvori 6x puta kad ima tri linka.
Pomagajte.
Re: Otvaranje linkova sa ShellExecute API-jem. Problem. 30.07.2007. u 02:25 · pre 234 meseca #2
Tvoj kod sasvim korektno radi, ako izuzmemo to da mu je trebalo "tri dana" da otvori ove 3 strane.

Najnormalnije mi je otvorio 3 taba u firefoxu.

Problem je u browseru.
Potpis
viking ®
Re: Otvaranje linkova sa ShellExecute API-jem. Problem. 30.07.2007. u 10:45 · pre 234 meseca
izmenjeno 1 put, poslednji put 0rc 30.07.2007. u 11:01
  1. 0rc30.07.2007. u 11:01zapis iz teksta poruke
#3
Meni otvara tri nova firefox-a ako nijedan nije radio, ili tri nova taba u vec startovanom.
Uzgred, meni iskace firewall upozorenje da Delphi aplikacija (Project1.exe) pokusava da izadje na net - valjda je to posledica pozivanja ShellExecute(Ex) sa URL objektom - iako samo Firefox zaista pokusava da se konektuje na neki server. Mozda ima neke veze sa tvojim problemom...

Da li si probao formu u kojoj se direktno navodi aplikacija koja treba da otvori URL, recimo nesto kao:
Code:

ShellExecute(0,nil,pchar('C:\Program Files\Mozilla Firefox\firefox.exe'),pchar('www.google.com'),nil,SW_SHOWNORMAL);

Problem sa ovim je sto treba da znas tacno gde je browser smesten, ali otvara mogucnosti da se koriste razlicite opcije iz komandne linije, za firefox ima podataka na http://kb.mozillazine.org/Command_line_arguments

Pogledaj i ovo, mozda moze da ti pomogne: http://delphi.about.com/cs/adptips2004/a/bltip0504_4.htm
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme