Et vanlig problem for avansert Java -utviklere har tilgang til Windows-registret fra en Java-program eller applet. Det er ikke et innebygd bibliotek innen Java som gir mulighet til å få tilgang til Windows -registret , men er JNI Registry biblioteket tilgjengelig for gratis bruk i Java- programmering. Den JNI Registry er en Sun -godkjent Java bibliotek som gir Java-klasser til bruk i programvareutvikling. Instruksjoner
en
Last ned JNI Registry biblioteket ( se Ressurser ) .
2
Pakk registret bibliotek filer ved å høyreklikke den nedlastede zip -filen og velge "Pakk ut til "-menyen for å velge plasseringen for filen bibliotekene .
3
Åpne Java integrert utviklingsmiljø ( IDE ) ved å dobbeltklikke på programikonet som ligger på skrivebordet på datamaskinen . Velg den spesifikke menyen til å starte et nytt Java-klassen i IDE ved å velge " Fil" og " New Java Class " menyvalg .
4
importere JNI registret class filer i den nye Java-klassen . For å importere klassene , lim inn følgende kode på toppen av den tomme klassen filen : en
import com.ice.jni.registry.Registry , import com.ice.jni.registry.RegistryException ; import com.ice . jni.registry.RegistryKey , import com.ice.jni.registry.RegistryValue ;
5
Lag ny Registry og RegistryKey klasse tilfeller. Når du har laget tilfeller åpne registerundernøkkelen du vil endre i Java- program . Følgende kode kan brukes til å utføre disse trinnene : en
Registry myRegistry = ny Registry (); Registry myRegistryKey = Registry.HKEY_CURRENT_USER ; Registry MyKey = registry.openSubkey ( myRegistryKey , " Software \\ \\ Microsoft \\ \\ CurrentVersion \\ \\ Explorer \\ \\ Advanced " , RegistryKey.ACCESS_ALL ) ;
6
Få tilgang til nøkkelen i registret innstillingen du ønsker å endre og deretter endre verdien . Når du får tilgang til Windows -registret i Java , må det gjøres på en " prøve loop" i tilfelle en Registry Unntak blir kastet av Java for å hindre at Java -programmet fra sviktende. Etter forsøk sløyfe har vært drevet i Java- program , vil de registreringsenheten være ferdig . Følgende kode kan brukes til å gjøre dette trinnet : en
try { RegsitryValue myRegistryValue = myKey.getValue ( " ok "); myKey.setValue ( "Test Value" , myRegistryValue ) ; myKey.deleteValue ( "ok" ) ;} catch ( RegistryException Reex ) { }