JAVA修改windows注册表

1.查看注册表的方法

首先,使用键盘的win+R打开运行框,输入regedit,就可以打开注册表。

2.使用cmd修改注册表的方法

java 代码写注册表 java注册表信息怎么删除_运维

  • REG QUERY 返回注册表的子项下的项和下一层子项的列表
  • REG ADD 向注册表中添加新的子项或条目
  • REG DELETE 删除注册表中的一个或一些项
  • REG COPY 将注册表项复制到本地或远程计算机上指定的位置
  • REG SAVE 将指定的子项、条目和注册表值的副本保存在指定的文件中
  • REG RESTORE 将保存的子项和条目写回到注册表
  • REG LOAD 将保存的子项和项写入注册表中的不同子项, 此命令适用于用于排查或编辑注册表项的临时文件
  • REG UNLOAD 删除使用 reg load 操作加载的注册表部分
  • REG COMPARE 比较指定的注册表子项或项
  • REG EXPORT 将本地计算机的指定子项、项和值复制到文件中,以便传输到其他服务器
  • REG IMPORT 将包含导出的注册表子项、条目和值的文件的内容复制到本地计算机的注册表中
  • REG FLAGS == 设置标志==

如果需要进一步的了解参数并使用,可以使用命令加上 /?,例如想知道REG ADD的使用方法,就使用 REG ADD /? 如下图所示

java 代码写注册表 java注册表信息怎么删除_服务器_02


键值的数据类型:(如果忽略,则采用REG_SZ)

  • REG_SZ 字符串
  • REG_MULTI_SZ 多字符串值
  • REG_EXPAND_SZ 长度可变的数据串
  • REG_DWORD 32位数字
  • REG_QWORD 64位数字
  • REG_BINARY 二进制
  • REG_NONE 空值

也可以参阅官方网站的讲解:https://docs.microsoft.com/zh-cn/windows-server/administration/windows-commands/reg

3.使用java修改windows注册表

例如:要在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters中添加一个项 Data REG_DWORD 值:20

命令行语言为:REG ADD HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters /v Data /t REG_DWORD /d 20 /f

如果cmd提示操作成功,但是在注册表编辑器中却没有变化,可以刷新一下,或者点进其它文件夹然后再回到修改的文件夹,应该就可以成功了

java 代码写注册表 java注册表信息怎么删除_java 代码写注册表_03

java代码为:

失败

String f_changeInterval = "REG ADD HKLM\\SYSTEM\\CurrentControlSet\\Services\\Tcpip\\Parameters /v Data /t REG_DWORD /d 20 /f";
Runtime.getRuntime().exec(f_changeInterval);

注意:实际测试中,如果不实用String[ ] 而是直接使用String,很容易出现找不到对应文件的错误,所以推荐使用下面的方法。

成功

String[] f_changeInterval = {"REG", "ADD", "HKLM\\SYSTEM\\CurrentControlSet\\Services\\Tcpip\\Parameters", "/v", 				  
							"Data", "/t", "REG_DWORD", "/d", "20", "/f"};
Runtime.getRuntime().exec(f_changeInterval);