Autor Beitrag
Taucher
Hält's aus hier
Beiträge: 3



BeitragVerfasst: Do 16.07.09 19:00 
Ich möchte in meinem Delphiprogramm die Prozedur
procedure keybd_event;
nutzen, um eine Eingabe von einem Edit in eine Website zu schreiben.

Dabei wird der Browser die Seite mittels der Funktion
ausblenden Delphi-Quelltext
1:
function ShellExecute;					

aufrufen und nach einem kurzen delay (zum laden der Seite) wird mit
ausblenden Delphi-Quelltext
1:
2:
keybd_event(VK_TAB, 000);
keybd_event(VK_TAB, 0, KEYEVENTF_KEYUP, 0);

die eingabebox ausgewählt.

Nun mein Problem:
die Prozedur keybd_event; hat folgende Syntax:
ausblenden Delphi-Quelltext
1:
procedure keybd_event(bVk: byte, bScan: byte, dwFlags: cardinal,dwExtraInfo: cardinal)					


die einzelnen Zeichen der Eingabe des Users bekomme ich mit
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
c: char;
i: integer;

for i := 1 to length(Edit1.Text) do
begin
  c := Edit1.Text[i];
end;


also dachte ich mir folgendes:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
c: char;
i: integer;

for i := 1 to length(Edit1.Text) do
begin
  c := Edit1.Text[i];
  keybd_event(VK_c, 000);
  keybd_event(VK_c, 0, KEYEVENTF_KEYUP, 0);
end;


Mir ist klar das das so nicht klappt, aber das VK_ zusammen als sting zu übergeben schlägt auch fehl. Es muss ja vom Typ byte sein.
Kann mir jemand helfen oder hat jemand eine andere Idee wie man so etwas realisieren kann?

MfG
Taucher

PS.: Ich nutze D7 Enterprise
ffgorcky
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 573

WIN XP/2000 & 7Prof (Familie:Win95,Win98)

BeitragVerfasst: Do 16.07.09 19:46 
Hallo und herzlich :welcome: hier im Forum!

Ich kenne mich auf dem Gebiet auch immer noch nicht so aus, aber wenn ich richtig denke, dann müsste das doch mit
Ord(EinzelnerUmzuwandelnderStringWert) gehen. - Oder?
So sieht es zumindest auch in diesem Thread aus.
Taucher Threadstarter
Hält's aus hier
Beiträge: 3



BeitragVerfasst: Do 16.07.09 21:36 
Danke für deine schnelle Antwort :)
In dem andern Thread wird eine andere Methode genutzt, die aber (soweit ich es ausprobiert habe) nich geht, da ich der/die/das Handle des Eingabefelds bräuchte, aber es im Browser kein Handle besitzt :(

Mit der ORD() Dunktion erhalte ich doch nur den Wert einer Variable vom Typ char und strings sind leider nicht kompatibel.
Den String Buchstabe für Buchstabe umzuwandeln ginge auch nicht, da ich auch noch das VK_ irgendwie davor bringen muss :?

MfG
Taucher
Taucher Threadstarter
Hält's aus hier
Beiträge: 3



BeitragVerfasst: Do 16.07.09 22:02 
Ich hab grade die Lösung gefunden!!
ausblenden Delphi-Quelltext
1:
KEYBD_EVENT(VKKeyScan(buchstabe: char),0,0,0);					


schreibt den gewünschten Buchstaben...

MfG
Taucher