Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: Java: työpöydällä auki olevat ikkunat

rattanat [28.09.2006 21:48:09]

#

Otsikon mukaisesti, onko Javalla mitenkään mahdollista tunnistaa mitä ikkunoita on auki windowsin työpöydällä ja missä kohtaa työpöytää ne sijaitsevat?

Eaim. jos ainut windowsin tehtävälistassa aukioleva ohjelma olisi vaikkaopa calculator, koodi tunnistaisi tämän ja kenties vielä sen sijainnin työpöydällä.

Jos on mahdollista niin mitä luokkia käyttämällä moinen onnistuisi?

FooBat [28.09.2006 22:24:30]

#

Javassa ei tarkoituksellisesti ole tukea käyttöjärjestelmäkohtaisille ominaisuuksille, joten tuo ei onnistu perusjavalla. Voit tietenkin koodata ikkunoiden havaitsemisrutiinin jollain windows-läheisellä kielellä (esim. C/C++/VB) ja käyttää javan natiivi-rajapintaa ajamaan tämä koodinpätkä.

rattanat [29.09.2006 02:08:12]

#

Jotenkin nuin ajattelinkin sen menevän, mutta piti silti varmistaa :)

Kenelläkään olisi tietoa, onko jo olemassa aiheeseen liittyviä projekteja. Vai ihanko itse joutuisi vääntämään?

Metabolix [29.09.2006 07:56:25]

#

No tuollahan niitä on koodivinkeissä useampi kappale, ja varsinkin VB-alueen keskustelusta löytyy tapoja etsiä kaikki ikkunat ja sählätä niiden kanssa.
https://www.ohjelmointiputka.net/koodivinkit/23537-vb6-päällä-olevat-ohjelmat kääntyy C:ksi varsin pienellä vaivalla.

A-P [29.09.2006 12:28:36]

#

JNI on avainsana tämän ulkopuolisen koodin liittämiseksi Javaan. Parempaa ohjetta, kuin Sunin oma, en nyt löytänyt: http://java.sun.com/developer/onlineTraining/Programming/JDCBook/jniexamp.html

FooBat [29.09.2006 12:52:58]

#

Tuossa näytti olevan asian tekevä C-versio.
https://www.ohjelmointiputka.net/keskustelu/13244-ikkunanuuskaus

JNI:stä toinen esimerkki, jossa tehdään läpinäkyvä ikkuna (vähän sekava esimerkki)
http://www.javaworld.com/javaworld/jw-10-1999/jw-10-jni.html

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta