2017-04-06 3 views
0

私はいくつかのセンサーがあるプロジェクトで作業しており、USB経由でPCに接続したいと思っています。今では、c言語で書かれたWindowsのlibがあり、すべての関数がcのcdecl呼び出し規約を使用していて、他の言語(java!)のプログラムで呼び出し規約が与えられているかどうかを確認する必要があります。特定のC呼び出し規則を持つjavaでC lib(dll)を使用するcdecl

私はちょっと調べて、javaのDLLをバインドしたり、JNAを使用するチュートリアルをいくつか見つけました。これは私のための新しいものであり、私はそれが可能である(そしておそらく例)ことを確かめたい - 装置はそれほど安くはなく、購入する前にそれを知りたい。

答えて

0

JavaからCコードを呼び出すことができます。ここには問題はありません。

次に、Cルーチンで非常に具体的なものがあれば、いつでもラッパーを経由することができます。

ここをクリックしてください。今度は - - 別のライブラリを呼び出すこのサンプルで

http://jnicookbook.owsiak.org/recipe-No-018/

は、あなたがCのコードを呼び出しています。

また、JNIコードを他のライブラリにリンクすることによっても行うことができます。ここのように:

https://github.com/mkowsiak/jnicookbook/tree/master/recipeNo023

オプションがたくさんあります。それはJNI対JNAの場合です。 JNAが十分に効率的であることを確認してください。一般に、JNAは遅くなる傾向があります。ここを見てみましょう:

https://github.com/mkopsnc/keplerhacks/tree/master/jnijna

は、この情報がお役に立てば幸いです。

ここにコードを投稿しません.JNI Cookbookのすべてのサンプルはgithubから入手できます。

+0

答えに感謝します!私はデバイスの売り手に尋ね、彼らがもう少し私を助けることができることを願っています。エフェクタントとのアスペクトは良い点です。私は2-3のセンサーを持っており、それらのすべてが40-50khzの周波数を持っているときは、たくさんのコールがあります - あるいは、ストリームやそれに類するものを開くかもしれません – white91wolf

関連する問題