纯Java是不可能操作注册表的。
你需要使用C\C++编写一个DLL,在Java中用本地方法调用。
你需要使用C\C++编写一个DLL,在Java中用本地方法调用。
解决方案 »
- Swing 中 鼠标事件捕获的 精度 问题
- 请问org.apache.http.client在下载文件时如何取得文件大小?
- 关于System.in.skip( 1 )对后续的System.in.read();的读取影响,求解
- 这是什么字符串编码?
- 请问如何在字符串中提取指定信息?
- StyleReport中文问题
- java连mysql出现unknown system variables "character_set_results\"错误?
- 我编译程序时提示找不到JFrame 或者cannot find class(JButton),why
- 有谁能告诉我JBUILDER的滚轮补丁在哪儿下载吗??
- 大家都来说几句,先谢了
- 请问jms server是什么?
- 请大家快来看看。。。。。
{
public native void ShowMessage();
}
编译后,
javah —jni ShowMessage
会生成一个C/C++头文件,然后用C/C++实现它。
public class RegistryRead {
public static void main(String[] args) {
RegistryRead demo = new RegistryRead();
demo.doit();
// IO.PressAnyKey();
}
public void doit() {
displayUserName();
displayODBCDSN();
}
public void displayUserName(){
com.ms.wfc.app.RegistryKey regKey;
String userName;
regKey =
com.ms.wfc.app.Registry.LOCAL_MACHINE.getSubKey
("Network\\Logon");
if (regKey == null) {
userName = "Unable to get username from Registry!";
}
else {
userName = (String) regKey.getValue("username");
}
System.out.println("Username : " + userName);
} public void displayODBCDSN() {
com.ms.wfc.app.RegistryKey regKey;
regKey =
com.ms.wfc.app.Registry.CURRENT_USER.getSubKey
("Software\\ODBC\\ODBC.INI\\ODBC Data Sources");
if (regKey == null) {
System.out.println("Unable to get ODBC DSN Registry!");
}
else {
String dsn [] = regKey.getValueNames();
System.out.println("ODBC DSN defined : ");
for(int i = 0; i < dsn.length; i++) {
System.out.println(dsn[i]);
}
}
}
}