jni4net
Javaで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 をロードするにはどうすればよいですか?