Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Edits aus fremden Programmen identifizieren (https://www.delphipraxis.net/18247-edits-aus-fremden-programmen-identifizieren.html)

Cuchulainn 16. Mär 2004 15:02


Edits aus fremden Programmen identifizieren
 
Ich habe wieder einmal ein Problem mit meinen Zugriffen auf ein fremdes Programm. Ich habe nun ein Fenster in dieser fremden Anwendung mit vier Editfeldern (TEdit). Das Handle des Fenster habe ich. Jetzt will ich in die Editfelder automatisch Benutzername, Passwort und zwei andere Angaben eingeben. Dafür muss ich die Felder allerdings identifizieren. Es ist nicht bekannt, was am Anfang in den Editfeldern steht. Ich kann sie also nicht durch den Inhalt identifizieren.
Kann mir da jemand helfen?

SirThornberry 16. Mär 2004 22:14

Re: Edits aus fremden Programmen identifizieren
 
du könntest die Positionen der Editfelder vergleichen und somit rausfinden welches wo liegt (du weißt ja zum beispiel welches edit ist das am weitesten oben ist)

Delphi-Quellcode:
var place: TWindowPlacement;
begin
  GetWindowPlacement(HandleDesEdits, @place);
end;

neolithos 16. Mär 2004 22:38

Re: Edits aus fremden Programmen identifizieren
 
Die Reihenfolge wie sie in dem Fensterbaum liegen ist auch immer gleich.

Also bei GetWindow oder EnumWindows einfach mitzählen.

>>> Erfahrungsgemäß <<<

Cuchulainn 17. Mär 2004 08:23

Re: Edits aus fremden Programmen identifizieren
 
Zitat:

Zitat von SirThornberry
du könntest die Positionen der Editfelder vergleichen und somit rausfinden welches wo liegt (du weißt ja zum beispiel welches edit ist das am weitesten oben ist)

Delphi-Quellcode:
var place: TWindowPlacement;
begin
  GetWindowPlacement(HandleDesEdits, @place);
end;

Das habe ich mir gedacht, aber ich hatte gehofft, es würde einfacher gehen.

Zitat:

Zitat von neolithos
Die Reihenfolge wie sie in dem Fensterbaum liegen ist auch immer gleich.

Also bei GetWindow oder EnumWindows einfach mitzählen.

Da habe ich befürchtet, dass das nicht so wäre. Aber wenn du diese Erfahrung gemacht hast, versuche ich es mal.

Vielen dank ihr zwei :D


Alle Zeitangaben in WEZ +1. Es ist jetzt 17: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