AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Standard Webbrowser Username und Passwort übergeben
Thema durchsuchen
Ansicht
Themen-Optionen

Standard Webbrowser Username und Passwort übergeben

Ein Thema von xthing98 · begonnen am 10. Mär 2020 · letzter Beitrag vom 10. Mär 2020
Antwort Antwort
xthing98

Registriert seit: 10. Mär 2020
3 Beiträge
 
#1

Standard Webbrowser Username und Passwort übergeben

  Alt 10. Mär 2020, 13:23
Hallo Delphi Freunde,

ich bin neu in dem Forum und habe gleich mal eine Frage.
Wie kann ich dem Standard Webbrowser, Username und Passwort, aus einem Delphi Programm übergeben? Ich habe hier schon etwas programmiert, allerdings funktioniert das noch nicht. Die Webseite startet gleich im richtigen Eingabefeld, dem Username bzw. in diesem Fall ist das die E-Mailadresse. Allerdings wird das Feld nicht aufgefüllt. Was mache ich da falsch?

Code:
procedure StringSenden(sendStr: string; browserStr: string; Handle: Longint);
var
  hTargetWnd1,hTargetWnd2: HWND;
  ProcID: Cardinal;
begin
   hTargetWnd1 := 0;

   hTargetWnd1 := Shellexecute(0, nil, 'https://www.brack.ch/anmelden', nil, nil, SW_SHOW);
   setForegroundWindow(hTargetWnd1);
   sleep(10000);
   if hTargetWnd1 <> 0 then
   SendMessage(hTargetWnd1, WM_SETTEXT, Longint(Handle), LongInt(PChar(sendStr)));
end;


Schon einmal vielen Dank für eure Hilfe.

Gruss
Marc
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Standard Webbrowser Username und Passwort übergeben

  Alt 10. Mär 2020, 13:27
Willkommen im Forum!

Code:
hTargetWnd1 := Shellexecute(0, nil, 'https://www.brack.ch/anmelden', nil, nil, SW_SHOW);

tausche den aufruf so aus:
Code:
'https://username:password@www.brack.ch/anmelden'
ob es mit dem anmelden danach klappt hängt von der webseite ab....


Hilft dir das evtl?
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
xthing98

Registriert seit: 10. Mär 2020
3 Beiträge
 
#3

AW: Standard Webbrowser Username und Passwort übergeben

  Alt 10. Mär 2020, 13:37
Hallo Kodezwerg,

danke, das habe ich auch schon probiert, leider funktioniert das nicht.

Diese Funktion, soll auch andere Webseiten bedienen können.

Gruss Marc
  Mit Zitat antworten Zitat
Rollo62

Registriert seit: 15. Mär 2007
4.067 Beiträge
 
Delphi 12 Athens
 
#4

AW: Standard Webbrowser Username und Passwort übergeben

  Alt 10. Mär 2020, 13:41
Vielleicht musst Du irgendeine Zwischenschicht aufrufen, statt der richtigen Seite.
https://phantomjs.org/
https://bitbucket.org/freeonterminate/scriptgate/src

Die Frage wäre, geht das was Du willst mit z.B. mit einem anderen Tool, ohne das etwas in Eingabefelder eingetragen werden muss ?
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: Standard Webbrowser Username und Passwort übergeben

  Alt 10. Mär 2020, 13:52
danke, das habe ich auch schon probiert, leider funktioniert das nicht.
Diese Funktion, soll auch andere Webseiten bedienen können.
Naja, wie mein Vorredner bereits schrieb (sowie auch ich) hängt es von der Site ab.
Generell ist der Aufruf so wie beschrieben.

Eine Universal-Lösung kann ich Dir an dieser Stelle nicht anbieten, nur eine Site-bezogene Variante die Dein Kode-Schnippsel erweitern würde indem man Tabulatoren sendet um auf's richtige Feld zu gelangen.
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
xthing98

Registriert seit: 10. Mär 2020
3 Beiträge
 
#6

AW: Standard Webbrowser Username und Passwort übergeben

  Alt 10. Mär 2020, 13:56
Hallo Kodezwerg, das würde mir eventuell helfen. Wie sende ich Tabs an die Seite?

Danke und Gruss
Marc
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#7

AW: Standard Webbrowser Username und Passwort übergeben

  Alt 10. Mär 2020, 14:07
Delphi-Quellcode:
procedure StringSenden(sendStr: string; browserStr: string; Handle: Longint);
var
  hTargetWnd1,hTargetWnd2: HWND;
  ProcID: Cardinal;
begin
   hTargetWnd1 := 0;

   hTargetWnd1 := Shellexecute(0, nil, 'https://www.brack.ch/anmelden', nil, nil, SW_SHOW);
   setForegroundWindow(hTargetWnd1);
   sleep(10000);
   if hTargetWnd1 <> 0 then
   begin
     // probiere es mal so... ungetestet aus dem Bauch heraus
     PostMessage(hTargetWnd1, WM_KEYDOWN, VK_TAB, 0);
     PostMessage(hTargetWnd1, WM_KEYUP, VK_TAB, 0);

     SendMessage(hTargetWnd1, WM_SETTEXT, Longint(Handle), LongInt(PChar(sendStr)));
   end;
end;
Gruß vom KodeZwerg
  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 23:39 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