2

dllのメソッドを呼び出す必要がありますが、それらの名前は、JavaNativeAccessを使用した_setParameterX@12および_getParameterX@20のようなものです。FunctionMapperまたはStdCallFunctionMapperを適切に使用するにはどうすればよいですか?これらの関数を呼び出すにはどうすればよいですか?jnaのドキュメントは私には少し曖昧です。

4

1 に答える 1

1

これらの関数は stdcall 呼び出し規約を使用します。サフィックスは、スタック上の着信引数のサイズを示します。

を使用しStdCallFunctionMapperて、適切なマッピングを自動的に生成する必要があります。W32API オプションで使用されるものと同様のオプションを作成します(関数マッパーは、W32 API 関数の -W または -A サフィックスを自動的に選択します)。新しいオプション マップを の呼び出しに渡しますNative.loadLibrary

StdCallLibraryさらに、関数を呼び出すときに適切な呼び出し規則が使用されるように、必ずインターフェイスを実装してください。

于 2012-09-25T13:24:29.583 に答える