0

jni4netJavaでDLL関数を使用しています。

jni4net-0.8.6.0-bin を使用して、次のコマンドを使用してコンパイルします。

.\proxygen.exe "D:\sampledlls\sample_interface.dll" -wd "D:\hope"

このコマンドを実行すると、次のエラーが発生します。

System.BadImageFormatException: Could not load file or assembly 'file:///D:\sampledlls\sampledll.dll' or one of its dependencies. The module was expected to contain an assembly manifest.

また、JavaでDLL関数を使用するためにJNAライブラリを使用しました。しかし、その中でも次のエラーが発生しています。

java.lang.UnsatisfiedLinkError: Unable to load library 'sampledll': The specified module could not be found.

JNAのコードは次のとおりです。

public class hellodll {
    public interface dcmInterfaceDLL extends Library {
        public void DCM_InitializeFields();
    }

    public static void main(String[] args) { 
        System.out.println(System.getProperty("java.library.path")); 
        System.setProperty("jna.library.path",
            "C:\Users\320035705\Downloads\JNAHelloWorldMWrobel\JNAHelloWorldMWrobel\sampledlls");
        dcmInterfaceDLL sdll = (dcmInterfaceDLL) 
        Native.loadLibrary("sample_interface", dcmInterfaceDLL.class);

        System.loadLibrary("sample_interface");

       sdll.DCM_InitializeFields(); 
    }
}

これは、native.dll です。

DLL をロードするにはどうすればよいですか?

4

1 に答える 1