AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Embedded WB Ftp Laufwerk
Thema durchsuchen
Ansicht
Themen-Optionen

Embedded WB Ftp Laufwerk

Ein Thema von ScharfeMietze · begonnen am 30. Nov 2015 · letzter Beitrag vom 11. Jan 2016
Antwort Antwort
Seite 1 von 2  1 2      
ScharfeMietze

Registriert seit: 5. Mär 2014
165 Beiträge
 
Delphi 10.2 Tokyo Architect
 
#1

Embedded WB Ftp Laufwerk

  Alt 30. Nov 2015, 00:21
Hey
Ich habe eine Frage.
Ich habe heute mit embdw1 erfolgreich zu einem FTP verbunden.
Dort bekomme ich ein Explorerfenster angezeigt mit allen was so enthalten ist. Aber wie mache ich den Automatisch weiter?
Wie würde ich den nun einen Ordner ansteuern oder eine Datei laden?
Z.B.
embdwb1.ViewPageSourceHtmlToStrings(list); bleibt leer ?!?
Eure SM
  Mit Zitat antworten Zitat
zeras

Registriert seit: 11. Mär 2007
Ort: Saalkreis
1.633 Beiträge
 
Delphi 12 Athens
 
#2

AW: Embedded WB Ftp Laufwerk

  Alt 30. Nov 2015, 06:23
Ist nicht ganz das, was du vorgeschlagen hast.
Ich nutze die Indy Komponenten und da habe ich keine derartigen Probleme.
Matthias
Es ist nie falsch das Richtige zu tun!
- Mark Twain
  Mit Zitat antworten Zitat
win568

Registriert seit: 8. Sep 2008
134 Beiträge
 
#3

AW: Embedded WB Ftp Laufwerk

  Alt 30. Nov 2015, 07:31
Hi

Den Download mit UrlDownloadToFile und das Ansteuern mit Navigate. Hänge dich in die Links rein (EventListener) und führe selbst das Navigate aus.
  Mit Zitat antworten Zitat
ScharfeMietze

Registriert seit: 5. Mär 2014
165 Beiträge
 
Delphi 10.2 Tokyo Architect
 
#4

AW: Embedded WB Ftp Laufwerk

  Alt 30. Nov 2015, 07:35
In dem Fall geht es um den Embedded WB und ich würde gerne wenn möglich damit arbeiten.

Mit dem Download hab ich verstanden.
Wie lasse ich mir die Ordner/Files den Auflisten, um sie zu durchsuchen/laden?

Grüße
SM
  Mit Zitat antworten Zitat
win568

Registriert seit: 8. Sep 2008
134 Beiträge
 
#5

AW: Embedded WB Ftp Laufwerk

  Alt 30. Nov 2015, 07:58
Hi

Der EmbeddedWB bietet eine Menge Events für solche Zwecke an. Wenn das Dokument geladen ist, dann wird das DocumentComplete gefeuert. Dort kannst du auf alle geladenen HTML Elemente per Doc2 zugreifen und diese erweitern/manipulieren. Um z.b. eine Liste aller geladenen Links zu erhalten, kannst du so vorgehen:

Code:

var
  lDispatch: IDispatch;
  lHTMLCollection: IHTMLElementCollection;
  lHTMLElement: IHTMLElement;
  i: Integer;
begin
  Result := nil;
  if Doc2 = NIL then begin
    Exit;
  end;

  // Ermittle alle Elemente
  lDispatch := Doc2.all;
  if Assigned(lDispatch) then begin
    lDispatch.QueryInterface(IHTMLElementCollection, lHTMLCollection);
    if Assigned(lHTMLCollection) then begin
      // Gehe alle Elemente durch
      i := 1;
      while (i <= lHTMLCollection.length) do begin
        // Ermittle mal das HTMLElement
        lDispatch := lHTMLCollection.item(pred(i), 0);
        lDispatch.QueryInterface(IHTMLElement, lHTMLElement);
        if Assigned(lHTMLElement) then begin
          if (CompareText(lHTMLElement.TagName, 'A') = 0) then begin
            -> Hier weisst du, eigenes Verhalten implementieren
          end;
        end;
        inc(i);
      end;
    end;
  end;
Willst du eigenes Verhalten einbauen, dann erweitere das HTML Element. Du kannst z.b. die Einträge aus dem FTP auslesen und das OnClick auf ein eigenes Event umbiegen (Jedes HTML Element hat ein OnClick Event).
  Mit Zitat antworten Zitat
ScharfeMietze

Registriert seit: 5. Mär 2014
165 Beiträge
 
Delphi 10.2 Tokyo Architect
 
#6

AW: Embedded WB Ftp Laufwerk

  Alt 30. Nov 2015, 10:30
Danke für die Antwort.
Nachdem ich MSHtml in die Uses geschmissen habe und davon ausgehe das "doc2" ein "IHTMLDocument2" ist, bekomme ich die Fehlermeldung: "Interface wird nicht unterstützt."
Wo liegt mein Fehler?

Grüße
SM


Delphi-Quellcode:
var
  lDispatch: IDispatch;
  lHTMLCollection: IHTMLElementCollection;
  lHTMLElement: IHTMLElement;
  i: Integer;
  doc2: IHTMLDocument2;
begin
 doc2 := embdwb1.document as IHTMLDocument2;


  lDispatch := Doc2.all;
  if Assigned(lDispatch) then
  begin
    lDispatch.QueryInterface(IHTMLElementCollection, lHTMLCollection);
    if Assigned(lHTMLCollection) then
    begin
      i := 1;
      while (i <= lHTMLCollection.length) do
      begin
        // Ermittle mal das HTMLElement
        lDispatch := lHTMLCollection.item(pred(i), 0);
        lDispatch.QueryInterface(IHTMLElement, lHTMLElement);
        if Assigned(lHTMLElement) then
        begin
          if (CompareText(lHTMLElement.TagName, 'A') = 0) then
          begin
            mmo1.Lines.Add(lHTMLElement.tagName);
          end;
        end;
        inc(i);
      end;
    end;
  end;
end;
  Mit Zitat antworten Zitat
win568

Registriert seit: 8. Sep 2008
134 Beiträge
 
#7

AW: Embedded WB Ftp Laufwerk

  Alt 30. Nov 2015, 11:05
Probier mal embdwb1.Doc2. Der EmbeddedWB hat bereits alles drinnen
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#8

AW: Embedded WB Ftp Laufwerk

  Alt 30. Nov 2015, 11:32
[OT]
auch wenn ich mich jetzt als Ignorant oute, was ist (Embedded) WB ?
Gruß
K-H
[/OT]
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
win568

Registriert seit: 8. Sep 2008
134 Beiträge
 
#9

AW: Embedded WB Ftp Laufwerk

  Alt 30. Nov 2015, 11:47
Der EmbeddedWB ist ein Wrapper um das ActiveX Control des IE. Es gibt zwar auch den TWebbrowser von Delphi, nur wrappt der TEmbeddedWB eine Unmenge mehr an Interfaces. Er ist so ziemlich die Komponente, die die Möglichkeiten des IE am besten in Delphi abbildet:

github Master
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#10

AW: Embedded WB Ftp Laufwerk

  Alt 30. Nov 2015, 12:32
Danke!

K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:38 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