当前位置: 代码迷 >> J2SE >> 怎样用java程序打开注册表解决思路
  详细解决方案

怎样用java程序打开注册表解决思路

热度:16   发布时间:2016-04-24 15:07:24.0
怎样用java程序打开注册表
我想写一java程序,用此程序打开注册表,并在注册表里写入一开机即执行的可执行文件,不知怎样用java写???

------解决方案--------------------
这些要用到JNI吧。
------解决方案--------------------
exec不可么?
------解决方案--------------------
LZ想要制造病毒?
------解决方案--------------------
java--调用EXE文件。
------解决方案--------------------
java不是特别适合写病毒
------解决方案--------------------
Runtime.getRuntime().exec( "regedit ")
------解决方案--------------------
runtime可解决 查一下API 里面讲了
------解决方案--------------------
其实java只能打开注册表中的指定的一项,可以进行建值,删除,等操作。具体哪一项我记不清了.
------解决方案--------------------
在java.util.prefs 包中提供了对Windows 注册表的访问功能:
import java.io.*;
import java.util.prefs.*;

public class Prefs {
public static void main(String args[]) {
String denominations[] =
{ "One ", "Two ", "Five ", "Ten ", "Twenty "};
String pictures[] =
{ "Washington ", "Jefferson ", "Lincoln ", "Hamilton ", "Jackson "};

NodeChangeListener nodeChangeListener =
new NodeChangeListener() {
public void childAdded(NodeChangeEvent event) {
Preferences parent = event.getParent();
Preferences child = event.getChild();
System.out.println(parent.name() + " has a new child " +
child.name());
}
public void childRemoved(NodeChangeEvent event) {
Preferences parent = event.getParent();
Preferences child = event.getChild();
System.out.println(parent.name() + " lost a child " +
child.name());
}
};

PreferenceChangeListener preferenceChangeListener =
new PreferenceChangeListener() {
public void preferenceChange(PreferenceChangeEvent event) {
String key = event.getKey();
String value = event.getNewValue();
Preferences node = event.getNode();
System.out.println(node.name() + " now has a value of " +
value + " for " + key);
}
};

// Look up user root
Preferences prefs =
Preferences.userRoot().node( "/net/zukowski/ibm ");

// Add listeners
prefs.addNodeChangeListener(nodeChangeListener);
prefs.addPreferenceChangeListener(preferenceChangeListener);

// Save a bunch of key-value pairs
for (int i=0, n=denominations.length; i < n; i++) {
prefs.put(denominations[i], pictures[i]);
}

// Display all the entries
try {
String keys[] = prefs.keys();
for (int i=0, n=keys.length; i < n; i++) {
System.out.println(keys[i] + ": " + prefs.get(keys[i], "Unknown "));
}
} catch (BackingStoreException e) {
System.err.println( "Unable to read backing store: " + e);
  相关解决方案