0

以前に作成した C++ コードに Java ユーザー インターフェイスを配置したいと考えています。この C++ コードは、いくつかのユーザー定義データ型を入力として必要とする 3 つの異なるアルゴリズムを実行し、それらの出力を同じユーザー定義引数で渡します。2 つの特徴を持つ JNA (Java Native Access) で記述されたサンプル コードが必要です。1 つ目は、1 つの dll で複数の関数を異なる名前で呼び出し、2 つ目は、入力と出力の両方に引数を渡します。誰かが私を助けることができますか?

4

1 に答える 1

0

ここでは、作業を開始するのに役立つ説明の例を示します。このスニペットでは、Java2Win64 は、実行するネイティブ コードを含む DLL です。関数 functionMaryam() は 1 つのパラメーターを int として取り、int を返します。あらゆるデータ型に簡単に拡張できます。

public class JnaExampleMaryam {

// ------------------------------------------
// Java2Win.class
// ------------------------------------------
public interface Java2Win extends Library {
    Java2Win call = (Java2Win) Native.loadLibrary("Java2Win64", Java2Win.class);

    int functionMaryam(int i);
}

// ------------------------------------------

// ------------------------------------------
// Test
// ------------------------------------------
public static void main(final String args[]) throws Exception {
    final File file = new File("rootToDLL", "Java2Win64.dll");
    LibraryLoader.loadLibrary(file);

    int result = Java2Win.call.functionMaryam(42);

}
// ------------------------------------------
}
于 2013-04-02T17:57:00.840 に答える