![]() |
Delphi Fenster soll im geöffneten Browser über dem Browser stehen
Hallo,
ich möchte ein geöffnetes Delphi Fenster über einem geöffneten Browserfenster anzeigen. Das Delphifenster soll stabil über dem Browserfenster stehen, so das man Daten z.B. Passwörter im Browser einfügen kann.:cry: Wer kann hier helfen ?? Gruß Oldmann |
AW: Delphi Fenster soll im geöffneten Browser über dem Browser stehen
FormStyle auf fsStayOnTop sollte schon reichen, aber sinnvoller wäre denke ich ein Browseraddon, das mit deiner Anwendung kommuniziert...
Das kann dann die Daten auch direkt ausfüllen. Das habe ich gerade erst auch gemacht. |
AW: Delphi Fenster soll im geöffneten Browser über dem Browser stehen
Hallo jaenicke,
"FSStayOnTop" reicht leider nicht. Auch nicht "BringToFront". Die Delphi Anwendung verschwindet immer beim Klick auf eine Website im Browser. Die Delphi Anwendung soll stabil über alen Anwendunden die aufgerufen werden, stehen. Gruß oldmann |
AW: Delphi Fenster soll im geöffneten Browser über dem Browser stehen
Du musst vermutlich die Methode CreateParams einbinden:
Delphi-Quellcode:
TForm1 = class(TForm)
private procedure CreateParams(var Params: TCreateParams);override; public { Public-Deklarationen } end; ... procedure TForm1.CreateParams(var Params: TCreateParams); begin inherited; Params.ExStyle := Params.ExStyle or WS_EX_TOPMOST; Params.WndParent := 0; end; |
AW: Delphi Fenster soll im geöffneten Browser über dem Browser stehen
Zitat:
Zitat:
Delphi-Quellcode:
SetWindowPos(Handle, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE Or SWP_NOSIZE);
gruss |
AW: Delphi Fenster soll im geöffneten Browser über dem Browser stehen
Hallo,
erst mal danke für Eure Antworten. Ich habe nur das große Problem, dass ich nicht weiß wie ich Eure Hinweise in meine Programm anwenden soll. Es wäre nett, wenn Ihr mir da noch ein wenig Hilfestellung gebt. Gruß oldmann |
AW: Delphi Fenster soll im geöffneten Browser über dem Browser stehen
Zitat:
|
AW: Delphi Fenster soll im geöffneten Browser über dem Browser stehen
Was macht denn die Anwendung bzw soll sie machen? Eine Abwendung, die ständig im Vordergrund ist, sollte einen sehr guten Grund dazu haben.
|
AW: Delphi Fenster soll im geöffneten Browser über dem Browser stehen
Hallo,
jetzt klappt das mit dem Fenster. Beim ersten mal gab es eine Fehlermeldung und ich dachte es müssten noch Variablen eingefügt werden. Beim zweiten Start klappte es dann. Also vielen Dank an alle. Ich möchte Logindaten die in dem geöffneten Delphifenster enthalten sind, einfach per Button in die entsprechende Eingabezeile der Website einfügen. Das heißt ich setze den Cursor in die Eingabezeile auf der Website und klicke dann in meinem Fenster auf den Button 'Einfügen'. Ich benutze dazu: SendText(StringReplace(Edit1.Text,#13#10,#13,[rfReplaceAll])); Leider klappt das noch nicht. Vielleicht weiß hier jemand Rat. Gruß oldmann |
AW: Delphi Fenster soll im geöffneten Browser über dem Browser stehen
In dem Moment, in dem du bei dir auf den Knopf drückst, verliert die Webseite den Eingabefokus...
Deshalb sagte ich ja, dass eine Browserextension sinnvoller wäre. |
AW: Delphi Fenster soll im geöffneten Browser über dem Browser stehen
Ist zwar eine bekloppte Lösung, aber hast du mal probiert vor dem SendText ein Alt+Tab (Fenster wechseln) zu senden.
Also vom Ablauf:
Wie man Alt+Tab Simuliert: ![]() Theoretisch müsste durch den Alt+Tab er dann zum Browser zurück springen (vom Fokus), das Eingabefeld ist noch als Fokus gesetzt (normalerweise) und somit müsste dein dann ausgeführter Code den Text einfügen. Ggf. musst du mit sleep() arbeiten damit er zur richtigen Zeit deinen Code ausführt und nicht zu früh. Hab es selber nicht getestet, nur ein dummer Gedanke. Zumal, wenn du dann woanders hin klickst in der Zeit vom sleep() das ganze nicht mehr funktioniert. Und falls du noch mehr Daten übergeben willst, wäre definitiv die vorgeschlagene Lösung eines Browserplugins die beste Variante. |
AW: Delphi Fenster soll im geöffneten Browser über dem Browser stehen
@Moombas Die Idee ist überhaupt nicht bekloppt. Dieses Vorgehen war früher durchaus mal gang und gäbe.
Eine weitere Möglichkeit (muss natürlich entsprechend angepasst werden): ![]() |
AW: Delphi Fenster soll im geöffneten Browser über dem Browser stehen
Die saubere Variante ist die, die auch die Bildschirmtastatur geht:
Das Fenster kann den Fokus nicht bekommen. Ich habe vwrgessen wie das ging... irgendwie WM_ACTIVATEAPP abfangen oder so. |
AW: Delphi Fenster soll im geöffneten Browser über dem Browser stehen
Hallo Sebastian,
du hast von einer Browserextension geschrieben. Was ist das ? Und wie komme ich daran ? Es wäre Nett, wenn Du mir hier aud die Sprünge helfen könntest. Eberhard Werner |
AW: Delphi Fenster soll im geöffneten Browser über dem Browser stehen
Hallo,
eine Browserextension ist eine Dll, die dynamisch in den Browser "eingeblendet" wird, und damit auch Zugriff auf den DOM (das Browserfenster) hat. Dürfte für dich aber viel zu kompliziert sein (für mich jedenfalls). Bleib doch einfach mal bei Alt+Tab-Simulieren. |
AW: Delphi Fenster soll im geöffneten Browser über dem Browser stehen
Zitat:
Wenn allerdings keine JavaScript Kenntnisse vorhanden sein sollten, würde ich das eher nicht versuchen. Mit JavaScript Kenntnissen ist das nicht so kompliziert wie du dir das offenbar vorstellst. Zitat:
Das geht sogar sehr einfach, ich habe es kurz ausprobiert:
Delphi-Quellcode:
TExampleForm = class(TForm)
... protected procedure CreateParams(var Params: TCreateParams); override; end; procedure TExampleForm.CreateParams(var Params: TCreateParams); begin inherited; Params.ExStyle := Params.ExStyle + WS_EX_NOACTIVATE; end; |
AW: Delphi Fenster soll im geöffneten Browser über dem Browser stehen
Zitat:
Mal eine andere Sache. @jaenicke wie ist das mit TWebBrowser im eigenen Programm? Wenn man die gewünschte Website dort darstellt und die Informationen einträgt müsste doch auch funktionieren oder denke ich da nun zu einfach. Mir fehlt da leider aktuell die Zeit um das für den TE zu testen, viel mir aber eben als evtl. weitere Möglichkeit ein. |
AW: Delphi Fenster soll im geöffneten Browser über dem Browser stehen
Hallo,
Es funktioniert. Das letzte Listing von Sebastian Jaenicke brachte den Durchbruch. Vielen Dank dafür ebenso vielen Dank an alle die sich an der Lösung beteiligten. Damit ist dieses Thema beendet. Gruß oldmann |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:19 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz