delphi - Api - GetWindowText

C++, C#, Visual Basic, Delphi, Perl a ostatní

Moderátor: Moderátoři Živě.cz

Odeslat příspěvekod miking 2. 6. 2017 06:43

Zdravím, potřeboval bych poradit. Snažím se vykrást data z cizího programu z editu, abych si je mohl zpracovat, ale nedaří se mi to.
Asi se mi to lepší vysvětlí pomocí obrázku https://prnt.sc/fewwx1

Ale to co tam spy program ukazuje jako caption, to neumim zrealizovat a ziskat pro sebe.
Snažím se na to jit pomocí funkce GetWindowText ale nic nezískám, ten popis v proměné nemám.
Chtel bych dostat do proměné "Welcome to.. " (ideálně celej obsah toho editu)

Dělam to takto: (nefunguje to)
Kód: Vybrat vše
SetLength(pom_retez,511); //nastavi string na 511 pismen
n:=GetWindowText(handle,@pom_retez[1],510); //ziska text okna a asi ulozi do pameti
textokna:=copy(pom_retez,1,n);         //zkopiruje cast retezce hodnotu 1-n


Handle okna ziskavam jednoduše tak, že tam ukažu myší. to mi funguje.
Kód: Vybrat vše
//--ziskani handle
pt:=mouse.CursorPos; //nastavuje mys
Handle:=WIndowFromPoint(pt);    //ziskavam handle okna pod kurzorem
//--konec ziskani handle


Vůbec tady těm api funkcim, nerozumím a zatím se s tím učím.
Díky za rady a pomoc. Pěknej den.
Je to poker a já bych si chtěl zapisovat, karty co jsem odehrál.
miking
Kolemjdoucí

Odeslat příspěvekod miking 2. 6. 2017 15:44

Trochu jsem pokročil i když to vyřešené ještě vůbec nemám.
Alespoň že jsem našel zdrojový kod v céčku https://github.com/strobejb/winspy
Sice v cíčku neumím vůbec ale už si stahuju Visual studio 2010 a doufam, že to z toho pochopim.
miking
Kolemjdoucí

Odeslat příspěvekod milanc 1. 8. 2017 13:49

Ahoj, mrkni na můj web milanc.chvalsiny.net, třeba na ten RichText. Myslím že z toho to snadno pochopíš (enumerace oken, childs, čtení a změn a vlastností...).
milanc
Junior
Uživatelský avatar


Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 3 návštevníků