Forum » Programiranje » [java] branje win registra
[java] branje win registra
DCER ::
Pozdrav!
Upam, da mi bo kdo pomagal rešiti problem. Prebrati moram neko vrednost iz registra (v HKEY_LOCAL_MACHINE].
V javi nisem našel classov, ki bi mi to omogočali. Od strica googla sem zvedel, da je zato potrebno spisati dll v C/C++ in ga potem vkljuciti kot native code v javi. Kaj takega najbrž še nekaj časa ne bom znal narediti, zato to odpade. Našel sem tudi nek Jawin, a ga ne znam uporabiti.
A obstaja kak lahek način kako bi to naredil s čim manj dodatne prtljage? Vse kar rabim je prebrati neko vrednost iz registra... Je kdo že delal to? Iskušnje?
Pomagajte prosim
Upam, da mi bo kdo pomagal rešiti problem. Prebrati moram neko vrednost iz registra (v HKEY_LOCAL_MACHINE].
V javi nisem našel classov, ki bi mi to omogočali. Od strica googla sem zvedel, da je zato potrebno spisati dll v C/C++ in ga potem vkljuciti kot native code v javi. Kaj takega najbrž še nekaj časa ne bom znal narediti, zato to odpade. Našel sem tudi nek Jawin, a ga ne znam uporabiti.
A obstaja kak lahek način kako bi to naredil s čim manj dodatne prtljage? Vse kar rabim je prebrati neko vrednost iz registra... Je kdo že delal to? Iskušnje?
Pomagajte prosim
kopernik ::
Točno s takim problemom se še nisem ukvarjal, vendar pa za podobne sistemske zadeve navadno kar zaženem neko orodje, ki je lahko del oper. sistema in preberem output programa. V tem primeru bi klical programčič reg, s katerim lahko prebereš windows registry in je priložen windowsem.
Evo, en primer imaš tukaj.
Mimogrede, zaganjanje novega procesa je relativno počasno, zato tak način ni ustrezen za take primere uporabe, kjer bi hotel velikokrat in v kratkem času prebrati windows registry (kar pa niti ni logično, ker se registry, kolikor vem, malo spreminja, zato lahko cache-iraš oz. shranjuješ prebrane vrednosti ...).
Evo, en primer imaš tukaj.
Mimogrede, zaganjanje novega procesa je relativno počasno, zato tak način ni ustrezen za take primere uporabe, kjer bi hotel velikokrat in v kratkem času prebrati windows registry (kar pa niti ni logično, ker se registry, kolikor vem, malo spreminja, zato lahko cache-iraš oz. shranjuješ prebrane vrednosti ...).
Tr0n ::
Poglej si razred java.util.prefs.Preferences za omejeno varianto. Drugace je pa kar nekaj APIjev za delo z Windows registri. Naceloma lahko tudi s sistemskim procesom (exec()), ceprav ni najbolj priporocljivo.
http://www.rgagnon.com/javadetails/java-0421.html
http://www.rgagnon.com/javadetails/java-0421.html
Zgodovina sprememb…
- spremenilo: Tr0n ()
CCfly ::
Jaz sem uporabil python v Javo pa ga lahko integriraš z jythonom.
Verjetno je še najlaže spisati kratek programček, ki vrednost iz registra izpiše v datoteko, potem pa v Javi le prebereš vrednost.
Verjetno je še najlaže spisati kratek programček, ki vrednost iz registra izpiše v datoteko, potem pa v Javi le prebereš vrednost.
"My goodness, we forgot generics!" -- Danny Kalev
CCfly ::
java.util.prefs.Preferences
Super tole bo verjetno boljša ideja.
Super tole bo verjetno boljša ideja.
"My goodness, we forgot generics!" -- Danny Kalev
kopernik ::
Ja, ampak zgleda da lahko s tem pišeš oz. bereš samo neko omejeno področje, ki ti ga kreira java ob namestitvi jdk-ja.
DCER ::
Hvala vam, da mi pomagate.
"Ja, ampak zgleda da lahko s tem pišeš oz. bereš samo neko omejeno področje, ki ti ga kreira java ob namestitvi jdk-ja."
Ravno to je problem. Če uporabljaš tole si omejen v neko področje. Rabim pa dostop do vrednosti zunaj njega.
Za uporabo API-jev rabis JNI? JNI bi se najrajši izognil.
Kopernik, tale reg se slisi v redu, se bom poglobil v to.
Glede časa pa ni problema, ker rabim to le občasno in le za dve vrednosti.
Še enkrat hvala za pomoč!
"Ja, ampak zgleda da lahko s tem pišeš oz. bereš samo neko omejeno področje, ki ti ga kreira java ob namestitvi jdk-ja."
Ravno to je problem. Če uporabljaš tole si omejen v neko področje. Rabim pa dostop do vrednosti zunaj njega.
Za uporabo API-jev rabis JNI? JNI bi se najrajši izognil.
Kopernik, tale reg se slisi v redu, se bom poglobil v to.
Glede časa pa ni problema, ker rabim to le občasno in le za dve vrednosti.
Še enkrat hvala za pomoč!
DCER ::
Sem že rešil zadevo
Uporabil sem kodo s kopernikovega linka (hvala kopernik!!!), le stringe sem spremenil. Dela super, čeprav se res pozna pri času izvajanja, ampak je sprejemljivo.
Še enkrat hvala vsem!
Uporabil sem kodo s kopernikovega linka (hvala kopernik!!!), le stringe sem spremenil. Dela super, čeprav se res pozna pri času izvajanja, ampak je sprejemljivo.
Še enkrat hvala vsem!
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | Java bo placljiva (strani: 1 2 )Oddelek: Programska oprema | 16710 (8674) | opeter |
» | [Java] Evidenca delovnega časa - Java v navezi z AccessomOddelek: Programiranje | 3281 (2501) | c0dehunter |
» | Visual Basic, C#, C++, razlike... (strani: 1 2 3 )Oddelek: Programiranje | 12594 (10265) | 64202 |
» | [C++] for {}Oddelek: Programiranje | 1710 (1404) | Gundolf |
» | Kako pošiljanje datotek v JAVI.Oddelek: Programiranje | 1835 (1706) | kopernik |