JAVA操作注册表问题..

时间:2022-03-20 06:14:31
最近在看关于JAVA操作windows注册表的东西

在网上下了一个jRegistryKey,也找了一点示例代码
但是运行总是不成功..请各位朋友帮忙找下错误..谢谢
下面是代码:
package RegeditTest;

import ca.beq.util.win32.registry.*;

public class Test {

public Test() {
RegistryKey r = new RegistryKey(RootKey.HKEY_LOCAL_MACHINE,//错误说是这儿的问题
"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Shell Folders");

System.out.println(r);

if (r.hasValue("Common Desktop")) {
RegistryValue v = r.getValue("Common Desktop");
System.out.println("Common Desktop = " + v.getStringValue());
}

// if(r.hasValues()) {
// Iterator i = r.values();
// while(i.hasNext()) {
// RegistryValue v = (RegistryValue)i.next();
// System.out.println(v.toString());
// } // while
// } // if
}

public static void main(String[] args) {
Test regtest = new Test();
}

}

然后下面是MyEclipse报的错误:
Exception in thread "main" java.lang.UnsatisfiedLinkError: ca.beq.util.win32.registry.RegistryKey.testInitialized()V
at ca.beq.util.win32.registry.RegistryKey.testInitialized(Native Method)
at ca.beq.util.win32.registry.RegistryKey.initialize(RegistryKey.java:271)
at ca.beq.util.win32.registry.RootKey.<clinit>(RootKey.java:88)
at RegeditTest.Test.<init>(Test.java:8)
at RegeditTest.Test.main(Test.java:28)

9 个解决方案

#1


零点:做个记号

#2


不懂呢....请仔细讲解一下..谢谢

#3


引用楼主 mykoma521 的帖子:
最近在看关于JAVA操作windows注册表的东西 

在网上下了一个jRegistryKey,也找了一点示例代码 
但是运行总是不成功..请各位朋友帮忙找下错误..谢谢 
下面是代码: 
package RegeditTest; 

import ca.beq.util.win32.registry.*; 

public class Test { 

public Test() { 
RegistryKey r = new RegistryKey(RootKey.HKEY_LOCAL_MACHINE,//错误说是这儿的问题 
"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Expl…

答:能保证jRegistryKey库里面的dll文件,WINDOWS能找到?.因为第一次new RegistryKey()时,会通过loadLibrary(...)将dll文件装入内存.找不到,会产生UnsatisfiedLinkError

#4


非常感谢..谢谢您的回答...问题解决了...谢谢

#5


kkkkkkkkkkkkkkkkkkk

#6


楼主,你是怎么解决啊。。我也是这个错误啊。

#7


rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr

#8


ri ji ba bu shuo zm gao 

#9


解决了也不分享一下,哎呀!!!!

#1


零点:做个记号

#2


不懂呢....请仔细讲解一下..谢谢

#3


引用楼主 mykoma521 的帖子:
最近在看关于JAVA操作windows注册表的东西 

在网上下了一个jRegistryKey,也找了一点示例代码 
但是运行总是不成功..请各位朋友帮忙找下错误..谢谢 
下面是代码: 
package RegeditTest; 

import ca.beq.util.win32.registry.*; 

public class Test { 

public Test() { 
RegistryKey r = new RegistryKey(RootKey.HKEY_LOCAL_MACHINE,//错误说是这儿的问题 
"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Expl…

答:能保证jRegistryKey库里面的dll文件,WINDOWS能找到?.因为第一次new RegistryKey()时,会通过loadLibrary(...)将dll文件装入内存.找不到,会产生UnsatisfiedLinkError

#4


非常感谢..谢谢您的回答...问题解决了...谢谢

#5


kkkkkkkkkkkkkkkkkkk

#6


楼主,你是怎么解决啊。。我也是这个错误啊。

#7


rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr

#8


ri ji ba bu shuo zm gao 

#9


解决了也不分享一下,哎呀!!!!