how to create registry key through java program?

前端 未结 3 1808
没有蜡笔的小新
没有蜡笔的小新 2020-12-21 04:32

I want to create registry key through java program to add the jar file in the start up.

RegistryKey r=new RegistryKey(RootKey.HKEY_CURRENT_USER,\"Software/Mi         


        
相关标签:
3条回答
  • 2020-12-21 05:00

    Add the JRegistryKey.jar in the library.
    Then copy and paste JRegistryKey.dll in my project.

    After that I run the same program ,The registry key is created successfully.

    RegistryKey r=new RegistryKey(RootKey.HKEY_CURRENT_USER,"Software\\Microsoft\\Windows\\CurrentVersion\\Run");
            RegistryValue v=new RegistryValue("name or the registrykey",ValueType.REG_SZ,"my jar file path");
            r.setValue(v);
    
    0 讨论(0)
  • 2020-12-21 05:22

    From the Javadoc:

    Thrown if the Java Virtual Machine cannot find an appropriate native-language definition of a method declared native.

    You wouldn't be on a win 64 OS by any chance?

    If not, the manual for jreg mentions:

    jRegistryKey is a JNI library. To use jRegistryKey, the following files are required:

    • jRegistryKey.jar
    • jRegistryKey.dll

    jRegistryKey.jar is the Java™ Archive (JAR) file containing the packaged Java™ class files, whereas jRegistryKey.dll is a Windows® dyanmically linked library (DLL) that contains the native (C/C++) code required to access the registry.

    jRegistryKey.jar must be included in the CLASSPATH available to the Java™ Virtual Machine (JVM);

    jRegistryKey.dll must be located in a directory included in the Windows® PATH environment variable or java.lang.UnsatisfiedLinkError's will be generated

    0 讨论(0)
  • 2020-12-21 05:26

    Adding jregistrykey.dll in my project didn't work for me. I included this block in my class and it worked.

    static {
        System.load("path\\to\\jregistrykey.dll");
    }
    
    0 讨论(0)
提交回复
热议问题