代码描述
用java对windows注册表进行编辑是一个比较困难的任务,因为java的平台无关性。但是java提供了Runtime类,它允许把原始的command命令直接发生送给OS,所以可以通过这个类来实现对注册表简单有效的管理。
这里允许的基本功能是添加、删除和查询注册表信息。根据key查询出value和type分别存放在不同的变量中。
//主要的方法
add(String location, String key, String type, String value);
delete(String location, String key);
query(String location, String key);
//查询消息用到的方法
getKey() => 检索的key名.
getValue() => 根据key得到的value
getType() => 根据key得到的数据类型 (REG_SZ, REG_BINARY, 等)
调用方法
例:
- public static void main(String[] args) {
- try {
- RegKeyManager rkm = new RegKeyManager();
- // 64位系统的注册表目录
- // rkm.query("HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\Tencent\\QQ2009", "Install");
- // 32位系统的注册表目录
- rkm.query("HKEY_LOCAL_MACHINE\\SOFTWARE\\Tencent\\QQ2009", "Install");
- System.out.println("KEY: " + rkm.getKey() + " DATA TYPE: " + rkm.getType() + " DATA VALUE: " + rkm.getValue());
- // rkm.add("HKEY_LOCAL_MACHINE\\SOFTWARE\\Tencent\\QQ2009","TESTING","REG_SZ","VALUE DATA");
- // rkm.delete("HKEY_LOCAL_MACHINE\\SOFTWARE\\Tencent\\QQ2009","TESTING");
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
public static void main(String[] args) { try { RegKeyManager rkm = new RegKeyManager(); // 64位系统的注册表目录 // rkm.query("HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\Tencent\\QQ2009", "Install"); // 32位系统的注册表目录 rkm.query("HKEY_LOCAL_MACHINE\\SOFTWARE\\Tencent\\QQ2009", "Install"); System.out.println("KEY: " + rkm.getKey() + " DATA TYPE: " + rkm.getType() + " DATA VALUE: " + rkm.getValue()); // rkm.add("HKEY_LOCAL_MACHINE\\SOFTWARE\\Tencent\\QQ2009","TESTING","REG_SZ","VALUE DATA"); // rkm.delete("HKEY_LOCAL_MACHINE\\SOFTWARE\\Tencent\\QQ2009","TESTING"); } catch (Exception e) { e.printStackTrace(); } }