Jak zachować wbudowaną przeglądarkę przed monitowaniem, gdzie zapisać pobrany plik?

Jak pobrać plik po kliknięciu przycisku pobierania programowo, a zatem nie trzeba znać adresu URL do pobrania pliku.

Po pobraniu pliku pojawia się monit i pyta, czy chcesz zapisać plik, po naciśnięciu „tak”, inny monit pyta, gdzie chcesz zapisać plik. Plik jest najpierw pobierany, może gdzieś do bufora, po pierwszym pobraniu pojawiają się monity.

Po kliknięciu przycisku, w jaki sposób przechwycić strumień pobierania i zapisać go gdzieś jako plik, bez wyświetlania wyskakujących okien?

(Każda metoda kliknięcia przycisku byłaby w porządku, poniższe powinny być w porządku).

procedure TForm1.Button1Click(Sender: TObject);
var
  x: integer;
  ovLinks: OleVariant;
begin
  WebBrowser1.Navigate('The web page');
  //wait for page to down load
  ovLinks := WebBrowser1.OleObject.Document.all.tags('A');
  if ovLinks.Length > 0 then
  begin
    for x := 0 to ovLinks.Length-1 do
      begin
        if Pos('id of button', ovLinks.Item(x).id) > 0 then
        //or if Pos('href of button', ovLinks.Item(x).href) > 0 then
        begin
          ovLinks.Item(x).click;
          Break;
        end;
      end;
  end;
end;

Powodem tego pytania jest: nie zawsze można znaleźć adres URL pliku. Np. W tymstronie internetowej, Nie mogłem znaleźć adresu URL programowo, ale po naciśnięciu przycisku eksportu, używając IE, plik został pobrany do folderu „Tymczasowe pliki internetowe”. W folderze IE „Tymczasowe pliki internetowe” znajduje się kolumna „Adres internetowy”, która pokazuje adres URL. Ale w Chrome nie ma takich danych. ALE w tymstronie internetowej, Mogę znaleźć adres URL programowo, ale po pobraniu pliku, naciskając „tutaj”, plik nie pojawia się w folderze IE „Temporary Internet Files”. W przypadku innych stron internetowych adres URL można znaleźć w folderze i programowo, ale w innych witrynach adres URL nie może zostać znaleziony w żaden sposób.

questionAnswers(2)

yourAnswerToTheQuestion