Java开发网 Java开发网
注册 | 登录 | 帮助 | 搜索 | 排行榜 | 发帖统计  

您没有登录

» Java开发网 » Java SE 综合讨论区  

按打印兼容模式打印这个话题 打印话题    把这个话题寄给朋友 寄给朋友    该主题的所有更新都将Email到你的邮箱 订阅主题
flat modethreaded modego to previous topicgo to next topicgo to back
作者 关于使用JAVA修改注册表问题
zhjdenis





发贴: 15
积分: 0
于 2007-10-17 18:21 user profilesend a private message to usersearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
我使用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)




Hibernate开发指南

话题树型展开
人气 标题 作者 字数 发贴时间
6507 关于使用JAVA修改注册表问题 zhjdenis 1272 2007-10-17 18:21

flat modethreaded modego to previous topicgo to next topicgo to back
  已读帖子
  新的帖子
  被删除的帖子
Jump to the top of page

   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