Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Formular ausfüllen für upload (https://www.delphipraxis.net/73024-formular-ausfuellen-fuer-upload.html)

Logic 11. Jul 2006 01:38


Formular ausfüllen für upload
 
Hallo,

ich habe hier ne kleine Seite mit einem upload-script.

Ich würde gerne automatisiert die Form von einem Delphi Programm ausfüllen lassen (inkl.) Uploadpfad und dann absenden.

Ich hab' z.b. Indy installiert, nur komm ich damit nicht so klar.

Wäre nett wenn ihr mir weiterhelfen könnten

mfg
Th

Luckie 11. Jul 2006 01:44

Re: Formular ausfüllen für upload
 
Wie man Formulare im Browser ausfüllt haben wir hier schon oft genug besprochen. Benutz bitte die Suche.

Logic 11. Jul 2006 01:47

Re: Formular ausfüllen für upload
 
Funktioniert das dann auch für so nen Upload formular, weil er muss ja immerhin ne Datei ins web hochladen...

Luckie 11. Jul 2006 02:02

Re: Formular ausfüllen für upload
 
Ob du in das Eingabefeld nun eine Datei einträgst oder sie von Hand mit der Schaltfläche und dem Dialog auswählst ist doch egal. Hauptsache in dem Eingabefeld steht der gültiger Pfad drinne.

Logic 11. Jul 2006 02:21

Re: Formular ausfüllen für upload
 
Also ich habs mit folgendem Code probiert, aber er läd einfach nix hoch :(

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  SL: TStringList;
begin
  SL := TStringList.Create;
  try
    SL.Add('userfile=C:\Dokumente und Einstellungen\Thorsten\Desktop\index.php');
    IdHTTP1.Post('http://www.logic-online.biz/etc/testup/index.php', SL);
  finally
    SL.Free;
  end;
end;
gefunden hier

Bernhard Geyer 11. Jul 2006 06:26

Re: Formular ausfüllen für upload
 
Zitat:

Zitat von Luckie
Ob du in das Eingabefeld nun eine Datei einträgst oder sie von Hand mit der Schaltfläche und dem Dialog auswählst ist doch egal. Hauptsache in dem Eingabefeld steht der gültiger Pfad drinne.

Es ist es nicht möglich ein HTML-Upload-Editfeld per Programmcode zu füllen (außgenommen senden von Tastaturanschlägen per SendKey). Dies wurde vor einigen Jahren geändert da dies eine Sicherheitslücke und jede "Nicht-Saubere" Webseite diverse halbwegs bekannte Datei einfach beim Navigieren auf ihrer Homepage hochladen könnte.

3_of_8 11. Jul 2006 06:42

Re: Formular ausfüllen für upload
 
Aber ein Upload-Feld funktioniert nichtsdestotrotz mit POST, daher dürfte es doch eigentlich gehen...

Logic 11. Jul 2006 13:30

Re: Formular ausfüllen für upload
 
Nunja bei mir geht es nicht, ich geh davon aus dass ich irgendwie nen internen browser machen muss oder so, aber ich hab davon ehrlich gesagt nicht viel Ahnung

Dash 11. Jul 2006 13:52

Re: Formular ausfüllen für upload
 
Vielleicht ist das etwas für dich?
http://www.iceplanet-online.de/delphi/projekte.htm

Etwas runterscrollen bis zu HTTP Up-/Download

capo 11. Jul 2006 15:51

Re: Formular ausfüllen für upload
 
hab da was gefunden

Delphi-Quellcode:
procedure TForm1.SetFilename(Value: WideString);

var

  Doc: IHTMLDocument2;

  Elements: IHTMLElementCollection;

  Element: IHTMLElement;

  InputElement: IHTMLInputElement;

  I, j: Integer;

  FormItem: Variant;

  pch: PChar;

  str1: string;

begin

  str1 := Value; //convert input value to string

  pch := PChar(str1); //type cast to pointer



  Doc := WebBrowser1.Document as IHTMLDocument2;

  Elements := Doc.all;

  for I := 0 to Elements.length - 1 do

  begin

    Element := Elements.item(I, EmptyParam) as IHtmlElement;

    if Element.tagName = 'INPUT' then

    begin

      InputElement := Element as IHTMLInputElement;

      if (SameText(InputElement.type_, 'file')) and

        (SameText(InputElement.Name, 'RemoteName')) then

      begin

        FormItem := InputElement;

        FormItem.Focus;

        SendKeys(PCh, False); // NOTE the false flag

      end;

    end;

  end;

end;
quelle:
http://groups.yahoo.com/group/delphi...r/message/6832

gruss, capo


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:54 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz