Topic: 关于使用JAVA修改注册表问题

  Print this page

1.关于使用JAVA修改注册表问题 Copy to clipboard
Posted by: zhjdenis
Posted on: 2007-10-17 18:21

我使用JNI修改WINDOWS注册表,本意想编一个程序锁定隐藏文件夹选项(HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\explorer\Advanced\Folder\Hidden\SHOWALL分支,然后在右边的窗口中双击CheckedValue键值项,将它的键值修改为“0”)。但是发现我无法在这个程序无法修改该目录下的键值,报错“Registry API Error 5, 'access denied' - 'RegSetValueEx()”。但是在其他目录下自己新建一个子项并添加删除自己建立的子键都很正常,比如说在HKEY_LOCAL_MACHINE\Software\Microsoft\下建立zhjdenis子项,并在其中加入一部分键值都可以很正常的操作。是不是因为我的权限不够?我已经是以管理员身份登录了呀,有什么办法解决呢?附件是程序引入的外部的JAR。

import com.ice.jni.registry.NoSuchKeyException;
import com.ice.jni.registry.RegStringValue;
import com.ice.jni.registry.Registry;
import com.ice.jni.registry.RegistryException;
import com.ice.jni.registry.RegistryKey;
import com.ice.jni.registry.RegistryValue;

public class JNIRegistryTest {

   public static void main(String[] str) {
   try {
   RegistryKey create = Registry.HKEY_LOCAL_MACHINE
   .openSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\explorer\\Advanced\\Folder\\Hidden\\SHOWALL");

  
   create.setValue(new RegStringValue(create,"hello1","hello000"));
   create.setValue(new RegStringValue(create,"hello2","hello222"));
      } catch (Exception e) {
   e.printStackTrace();
   }
   }

}

关于JNI的registry-3.1.3.zip (505.87k)


   Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent
Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1
客服电话 18559299278    客服信箱 714923@qq.com    客服QQ 714923