java修改windows注册表设置程序自动运行

需要修改的注册表项 
[HKEY_LOCAL_MACHINE/Software/Microsoft/Windows/CurrentVersion/Run]  开机自动运行程序
[HKEY_LOCAL_MACHINE/Software/Microsoft/Windows/CurrentVersion/RunOnce] 开机自动运行程序 且 仅运行一次
[HKEY_LOCAL_MACHINE/Software/Microsoft/Windows/CurrentVersion/RunServices] 开机自动运行服务

JDK 从1.4开始提供操作 Windows 的 API 是 Preferences,因为这个 API 也是跨平台的,所功能比较弱,在 Win32 下只能用来操作 HKCU/Software/JavaSoft 和 HKLM/Software/JavaSoft 下及子节点的数据。

自由访问注册表其他键的值光用 Java 是做不到的,必然方案就是 JNI,这里我使用的是Windows Registry API Native Interface http://www.trustice.com/java/jnireg/index.shtml 下的 registry-3.1.3.zip(包含源代码)。可以利用它访问、修改、导出注册表项到文件等。解开 registry-3.1.3.zip,在 bin 目录中可以看到两个文件 ICE_JNIRegistry.dll 和 registry.jar,动态库就是本地代码实现。

com.ice.jni.registry.Registry.main() 就是 registry 的示例代码,动态库 ICE_JNIRegistry.dll 也是在这个类的静态块中被加载的,记得要把 ICE_JNIRegistry.dll 放在它能够被加载的位置上,比如你把 registry-3.1.3.zip 解压到 c:/registry-3.1.3,在命令行下你可以进入到这个目录中,并执行。

代码:

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值