Autor Beitrag
Martin91
Hält's aus hier
Beiträge: 5



BeitragVerfasst: So 17.06.07 14:15 
Hi,
ich möchte in ein eingabefenster eines anderen programmes lesen und schreiben.
Könnte mir jemand ein paar codezeilen posten?

MfG Martin


Moderiert von user profile iconChristian S.: Topic aus Delphi Language (Object-Pascal) / CLX verschoben am So 17.06.2007 um 18:32
Marc.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1876
Erhaltene Danke: 129

Win 8.1, Xubuntu 15.10

BeitragVerfasst: So 17.06.07 14:42 
Ein paar Codezeilen?
ausblenden Delphi-Quelltext
1:
2:
3:
begin
 { Benutze die Suche ! }
end;
:)
Martin91 Threadstarter
Hält's aus hier
Beiträge: 5



BeitragVerfasst: So 17.06.07 18:22 
Ich hab schon gesucht! entweder ich bin zu blöd zum suchen oder es gibts keine derartigen treads.

Bitte kann mir keiner helfen?

Martin
alias5000
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 2145

WinXP Prof SP2, Ubuntu 9.04
C/C++(Code::Blocks, VS.NET),A51(Keil),Object Pascal(D2005PE, Turbo Delphi Explorer) C# (VS 2008 Express)
BeitragVerfasst: So 17.06.07 18:46 
Suche in der Entwickler-Ecke WM_GETTEXT wäre ein Stichwort, da sollte es einige Lösungen geben. Oder zum Beispiel Suche in der Entwickler-Ecke TEXT AUS FREMDER ANWENDUNG AUSLESEN sollte IMHO auch was bringen.

Gruß
alias5000

_________________
Programmers never die, they just GOSUB without RETURN
fuba
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 125

Win7
D7 Ent.
BeitragVerfasst: Fr 22.06.07 01:58 
als erstes benötigst du "FindWindow"
diesen befel findest du 100% im forum.

Dann such mal nach "SendMessage" findest du auch im forum

danach wie schon erwähnt wurde "WM_GETTEXT" und / oder "WM_SETTEXT".

wobei du bei WM_SETTEXT warscheinlich am anfang probleme haben wirst, ging mir auch so ;)

aber hier mal 2 kleine Beispiele:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
procedure TForm1.Button1Click(Sender: TObject);
var
  wnd: HWND;
begin
  SendMessage(wnd, WM_SETTEXT, 0, integer(pchar('Hier kommt der gewünschte Text rein')));
end;


und WM_GETTEXT ist auch nicht so ohne ^_^
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
procedure TForm1.Button1Click(Sender: TObject);
var
  wnd: HWND;
  Buffer: PChar;
  len: Integer;
  s: string;
begin
  len := SendMessage(wnd, WM_GETTEXTLENGTH, 0, 0)+1;
  GetMem(Buffer, len);
  try
    ZeroMemory(Buffer, len);
    SendMessage(wnd, WM_GETTEXT, len, lParam(Buffer));
    s:=Buffer;
  finally
    FreeMem(Buffer, len);
  end;
end;


die variable "s" ist hier der text der im handle "wnd" steht.

aber um das umsetzen zu können such dir erstmal "FindWindow" und versuch dich damit mal.
Ohne "FindWindow" wirst nicht weiterkommen, aber das erklär ich hier jetzt nicht, hab stress und steht auch genug im forum ^_^