AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi Daten aus IE in Memo transferieren
Thema durchsuchen
Ansicht
Themen-Optionen

Daten aus IE in Memo transferieren

Ein Thema von eddy · begonnen am 20. Mär 2003 · letzter Beitrag vom 21. Mär 2003
Antwort Antwort
Benutzerbild von eddy
eddy

Registriert seit: 3. Jan 2003
Ort: Sachsen
573 Beiträge
 
Delphi 5 Professional
 
#1

Daten aus IE in Memo transferieren

  Alt 20. Mär 2003, 23:34
Hallo Leute,

ich habe eine Anwendung, bei der ich momentan zwischen IE und eigenem Programm hin-und-her springen muß.

Aktuelle Vorgehensweise:

im IE wird eine Seite mit diversen Daten geöffnet, in den Body geklickt,
mit Strg-A der Inhalt markiert, mit Strg-C in den Zwischenspeicher kopiert, anschließend wird per Mausclick in die eigene Anwendung gewechselt und per Click auf einen Button der Zwischenspeicher ausgelesen und von meinem Programm weiter verarbeitet.

Ich würde gern einiges davon automatisieren. Die Anwahl der Seite muß manuell von den vorgegebenen Button erfolgen, da sämtliche Versuche, die Seiten andersweitig anzuwählen gescheitert sind.

Der Click auf den Button in meiner Anwendung soll nun eine automatischen Rücksprung auf den IE bewirken, das Markieren der angezeigten Daten, das Kopieren in den Zwischenspeicher und den Rücksprung in meine Anwendung. Dort soll ein Click auf meinen Button simuliert werden, damit die im Zwischenspeicher befindlichen Daten verarbeitet werden.

Ist ein bischen viel Text, aber wie soll ich es kürzer erklären?

Vielen Dank im Voraus.
eddy
  Mit Zitat antworten Zitat
Benutzerbild von Garby
Garby

Registriert seit: 17. Mär 2003
Ort: Tirol
199 Beiträge
 
Delphi 2005 Professional
 
#2
  Alt 21. Mär 2003, 09:42
Hallo,

kannst du keinen TWebbrowser in deiner Anwendung verwenden?

Garby
Walter
Wenn zwei dasselbe tun, ist es noch lange nicht dasselbe
(Adelphi)
  Mit Zitat antworten Zitat
Benutzerbild von eddy
eddy

Registriert seit: 3. Jan 2003
Ort: Sachsen
573 Beiträge
 
Delphi 5 Professional
 
#3
  Alt 21. Mär 2003, 10:47
Hallo Garby,

ich habe bisher noch gar nichts mit TWebBrowser gemacht. Nach Deiner Frage habe ich eine wenig experimentiert, bin aber nur begrenzt erfolgreich.

Die gewünschten Internetseiten erhalte ich in meinem WebBrowser angezeigt. Damit wäre die erste Hürde genommen. Mit welchen Anweisungen kann ich jetzt den Focus auf den Body setzen, alles markieren und in den Zwischenspeicher kopieren?

Eine Anweisung SelectAll habe ich nicht gefunden.

mfg
eddy
  Mit Zitat antworten Zitat
Benutzerbild von Garby
Garby

Registriert seit: 17. Mär 2003
Ort: Tirol
199 Beiträge
 
Delphi 2005 Professional
 
#4
  Alt 21. Mär 2003, 11:50
Wenn du TWebbrowser verwendest musst du nicht mehr über die Zwischenablage gehen.
Wie man aus dieser Komponente den Text auslesen kann siehst du in diesem Beispiel.

Gruß
Garby
Walter
Wenn zwei dasselbe tun, ist es noch lange nicht dasselbe
(Adelphi)
  Mit Zitat antworten Zitat
Benutzerbild von eddy
eddy

Registriert seit: 3. Jan 2003
Ort: Sachsen
573 Beiträge
 
Delphi 5 Professional
 
#5
  Alt 21. Mär 2003, 13:19
Hallo Garby,

ich habe, Deinem Hinweis folgend, folgende Befehle probiert:
Code:
  aText := WebBrowser1.OleObject.Document.Body.InnerText;
  aHTML := WebBrowser1.OleObject.Document.Body.InnerHTML;
war aber nicht erfolgreich. aText bleibt leer und aHTML sieht auch nicht so aus wie das, was erscheint, wenn man "Quelltext anzeigen" anclickt.

Beim Auswahl-Menü erscheint nach der Eingabe des Punktes hinter WebBrowser1 OleObject bei mir nicht in der Auswahlliste. Was kann man statt Body noch alles eingeben?

mfg
eddy
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#6
  Alt 21. Mär 2003, 15:51
Heißt deine WebBrowser-Komponente eventuell gar nicht WbBrowser1?
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von eddy
eddy

Registriert seit: 3. Jan 2003
Ort: Sachsen
573 Beiträge
 
Delphi 5 Professional
 
#7
  Alt 21. Mär 2003, 16:31
Hallo Luckie,

Zitat:
Heißt deine WebBrowser-Komponente eventuell gar nicht WbBrowser1
Nein, sie heißt:
Code:
WebBrowser1: TWebBrowser;
Ein Schreibfehler liegt nicht vor, da würde der Compiler mir etwas von "Undefinierter Bezeichner" erzählen.

Code:
WebBrowser1.OleObject.Document.SelectAll;
funktioniert auch nicht. Da erhalte ich während der Laufzeit die folgende Fehlermeldung:
Zitat:
Die Methode 'SelectAll' wird vom Automatisierungsobject nicht unterstützt.
Unter Google habe ich auch nichts gefunden, was mich weiter bringt.

Hat noch jemand eine Idee?

mfg
eddy
  Mit Zitat antworten Zitat
Benutzerbild von eddy
eddy

Registriert seit: 3. Jan 2003
Ort: Sachsen
573 Beiträge
 
Delphi 5 Professional
 
#8
  Alt 21. Mär 2003, 21:55
Hallo Leute,

Problem ist gelöst:

Code:
{
  angezeigte Internetseite (im wesentlichen mit Text) markieren
  markierten Text in den Zwischenspeicher kopieren
}

uses
  ActiveX, OleCtrls;

procedure TFMoney.SpeedButton3Click(Sender: TObject);
begin
  WebBrowser1.SetFocus;
  try
    WebBrowser1.ExecWB(OLECMDID_SELECTALL, OLECMDEXECOPT_PROMPTUSER);
    WebBrowser1.ExecWB(OLECMDID_COPY, OLECMDEXECOPT_PROMPTUSER);
  except
  end;
  // Aktionen, die den Zwischenspeicher auslesen
end;



// damit das Kopieren über den Zw.speicher funktioniert:
initialization
  OleInitialize(nil);

finalization
  OleUninitialize;

end.
mfg
eddy
  Mit Zitat antworten Zitat
Antwort Antwort


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 18:49 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