Manipular el Regedit de windows

Buenas....una consulta...quisiera saber como puedo manipular (editar,agregar,modificar,eliminar) las claves de Regedit de windows...mediante una aplicacion java...Si existe algun manual o libro o algo ...se les agradeceria muchisimo...

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de paranoid_android

Por curiosidad

Por curiosidad ¿Para qué quisieras hacer eso desde java?

Imagen de neko069

Por curiosidad

Por curiosidad, ya buscaste en google?

Liga 1.
Liga 2.
Liga 3.

Imagen de rugi

Pues, la manera "mas directa"

Pues, la manera "mas directa" es , ejecutar
Runtime.getRuntime().

Parsear la salida y actuar en función de resultados.

Ahora, toma en cuenta que dependiendo del contexto de ejecución estarás mayor o menormente límitado.
Por ejemplo, si por aaaalllguuuunnaaaaa razón esto lo quieres ejecutar desde el browser, tu unica opcion es un applet firmado,
o en su defecto un JNLP que active una aplicación de escritorio que realice lo que quieres.

El mejor caso es que, todo lo que quieres hacer sea desde una aplicación desktop/linea de comandos.

Pero, aun así, no me parece que sea buena idea hacer lo que quieres hacer, conozco aplicaciones que lo hacen , pero,
solo porque no habia manera (dadas las restricciones de ambiente) de hacerlo con algo propio del sistema operativo.

Te sugiero que primero te plantees si, es o no posible realizarlo de otra manera.

Saludos y suerte!
---
RuGI

Imagen de paranoid_android

Te aporto información adicional

Solo para que conozcas un poco de acceso a llamadas nativas te recomiendo que busques en Google JNI. No digo que vayas a programar en él, pero si te va a dar ideas del tipo de restricciones y problemas que puedes enfrentar.
Saludos

Si busque en San Google!!!!! :-/

si Busque...y encontre todo eso....pero es limitado....uno es solo lectura del alguna clave...no se puede modificar.......el codigo del primer codigo aun lo estoy revisando porque es un poquito largo...pero al parecer tambien es limitado.....gracias de todos modos

Lo que quiero hacer........

Lo que quiero hacer es una aplicacion que me genere un historial de todos los dispositivos usb introducidos en la pc (marca,id,fecha,hora,etc,etc) ademas que quiero habilitar o bloquear el puerto USB..... para ello tengo que tener acceso total al registro de windows(regedit) , no solo en el nodo de usuario sino tambien en el nodo del sistema.....

Si busque en San Google

Si he buscado y encontre esos enlaces....pero son un poco limitados..puesto que uno ingresa de manera se SOLO LECTURA ....y solo en el nodo del usuario....gracias de todos modos!!!! :-/

:-/

al parecer lo mas sencillo es desarrollar esa aplicacion en C o C++ y mediante el JNI llamar a la aplicion desde la aplicacion principal.....estaba buscando otra forma mas sencilla ...pero al parecer no existe..!!!! gracias......

Imagen de genitalico

que tal .. mm te recomiendo

que tal .. mm te recomiendo que hagas algun metodo que te escriba en un archivo todos las modificaciones que quieres hacer al registro.. y le pongas la extension .reg que son los archivos estandar para modificar el registro.. para ejecutar uno de esos archivos hay que tener permisos de administrador..lo cual no se y creo que no funcionaria si ejecutas el archivo desde Runtime.getRuntime().. ya que el programa desde el principio deberia arbrirse en modo administrador..

los archivos .reg son modo texto lo cual no es dificil de crear.. pero como siempre hay que tener cuidado..

es una solucion que se me ocurre..

si no podrias hacer un ejecutable en C#, hay librerias incluidas en C# para modificar el registro de forma facil. ademas de que en el manifest del programa se le puede decir que se ejecute en modo administrador de forma automatica y con eso te apareceria la clasica ventana que te pregunta si ejecutar o no el programa.. y despues lo mandas a llamar desde Java ya sin necesidad de abrir java como admin..