Key press

2

Key press

offline
  • Pridružio: 13 Okt 2005
  • Poruke: 26

E ljudi moji ovo i dalje ne ide...
probala sam sa keybd_event -om i kad to stavim u petlju jednostavno se sve zapuca sve dok ne zavrsi petlju,tako da blage veze nemam kako to Srkiju funkcionise.
Pa sam se onda vratila ovoj prvoj varijanti. E i tu ima kvaka. Ne mogu da koristim FindWindow da nadjem Handle za tu igricu posto ne znam koje dodjavola treba parametre da ukucam, (lpclassname,lpwindowname) - otkud znam koji je lpclassname?...No napravila sam sledecu funkciju da nadjem handle:
function getHwnd(ime: String): Hwnd;      var           WindowHwnd, DesktopHwnd: Hwnd;           buff: array[0..255] of char;                 begin          DesktopHwnd:= GetDesktopWindow;          WindowHwnd:= GetWindow(DesktopHwnd,GW_CHILD);          while (WindowHwnd <> 0) do          begin             GetWindowText(WindowHwnd,buff,255);             if IsWindowVisible(WindowHwnd) and (buff <> '') then                 if buff = ime then                    result:= WindowHwnd;          WindowHwnd:= GetWindow(WindowHwnd, GW_HWNDNEXT);          end;     end;



To pozovem u OnTimer event-u,znaci pokrenem program, upalim igricu ali neceeeee Mr. Green eto...ako sam nesto ispustila dodajte...



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Emil Beli
  • Pridružio: 03 Jan 2005
  • Poruke: 2990
  • Gde živiš: Beograd

Pa nista, sa voim si samo nasla handle... ali nisi napravila ono sto sam ti ja rekao.
Prvo napravi odvojenu aplikaciju koja ce da ti lista imena prozora svake 3-4 senkunde i zapisuje u fajl.. onda otvori igricu, dodji do onog dela gde pucas, zatvori igricu i onda procesljaj fajl.

Zasto ti to kazem: zato sto igrica moze, a i verovatno to radi, otvori glavni prozor, pa ti stisnes "play", pa on otvori drugi, pa otvori treci...
Onda moras da znas tacno koji je handle prozora gde pucas.

Drugi nacin:
Napravis windows HOOK na ctrl, pa nek onda loguje gde je stisnut, tj kad bude stisnut, da ti popishe imena prozora.



offline
  • Srđan Tot
  • Am I evil? I am man, yes I am.
  • Pridružio: 12 Jul 2005
  • Poruke: 2483
  • Gde živiš: Ljubljana

Posto od price nema nista, evo programa koji ja koristim za automatsko pucanje u Chicken Invaders igri. Ti samo promeni putanju do igre (putanja se nalazi u promenljivoj Igra) i postavi tastere koji trebaju da se pritiskaju. Ako zelis brze da pucas pauzu postavi na manju vrednost. To je vreme u milisekundama koje se ceka izmedju pritiskanja tastera.

[url=https://www.mycity.rs/must-login.png

offline
  • igor86  Male
  • Stručni saradnik
    Web programiranje
  • Pridružio: 24 Maj 2006
  • Poruke: 1633

Pokusaj sa selotejpom. Hahtjeva nepoznavanje delphija.

offline
  • Srđan Tot
  • Am I evil? I am man, yes I am.
  • Pridružio: 12 Jul 2005
  • Poruke: 2483
  • Gde živiš: Ljubljana

Tesko da bi selotejp mogao da pritisne pa da pusti dugme i to stalno ponavlja... jedino ako ti posetujes neku pametnu verziju selotejpa koju mozes da naucis sta da radi Very Happy

offline
  • prm 
  • Građanin
  • Pridružio: 11 Jun 2006
  • Poruke: 94

Nesto slicno sam radio ima neki dogadaj za obradu dogadjaja sa tastature samo moras u formi da podesis neko svojstvo da ti neobraduje neke aktivne komponente.....

Pomerao sam neke slicice po formi samo sam morao da podesim svojstva alphablend i posle sam na elitesecurity nasao nesto sa poduplavanjem velicine bafera.....\

Inace mislim da se ta tema na elitu vise puta ponavljala.......

<?!?>


HH

Dopuna: 01 Avg 2006 12:13

Inace u VB bibliji ima detaljno objasnjen rad sa tastaturom

Dopuna: 01 Avg 2006 12:15

inace mene interesuje na koji nacin mislis da realizujes metke

offline
  • Pridružio: 25 Mar 2006
  • Poruke: 67
  • Gde živiš: Doboj, Republika Srpska

da bi ovo uradila teba da napravis dll faj koji salje da je pritisnut.
znaci napravis funkciju
function taster; begin     keybd_event(VK_CONTROL, 0, KEYEVENTF_EXTENDEDKEY, 0) ; end; napravis aplikaciju koja nakon odredjenog vremena poziva ovu funkciju i tobi trebalo da bude to

Ko je trenutno na forumu
 

Ukupno su 761 korisnika na forumu :: 8 registrovanih, 1 sakriven i 752 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: ArchaBasha, cikadeda, DonRumataEstorski, draggan, Dragomir1970, Koridor, saputnik plavetnila, wolverined4