問題タブ [jna]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c - 参照によるJNA符号なし整数は奇妙な結果をもたらします
現在、JNAを使用してCAPIにアクセスしようとしています。しかし、参照によって渡される符号なし整数パラメーターに問題があります。
問題のC関数は次のとおりです。
Javaでは次のようになります。
そして、これが私がそれをどのように使用しているかです:
これは私に与えます:
11000100110110010011000000(51602624)
とはいえ、0である必要があります。
JNA-APIの使用方法に問題がありますか?
ありがとうございました!
java - JNA(Java)を使用したWindowsサムネイルプレビュー
私にくれます
私はそれを完全に間違っていると感じていますが、ドキュメントを掘り下げるとどこにも行き着きませんでした。
java - Java Native Access APIは、実行のためにネイティブライブラリをローカルに保存しますか?
Java Native Access APIが、ネイティブライブラリをロードして使用する前、またはロードして使用するときに、ネイティブライブラリを一時的な場所にローカルに保存するかどうかを誰かが知っているかどうか疑問に思っていました。
java - JNAインターフェースマッピングをどのように拡張しますか? (ジャワ)
User32 インターフェイス (プラットフォーム ライブラリ) にはいくつかの WinAPI 関数が欠けているため、拡張してみました。
しかし、呼び出しmyapp.User32.INSTANCE.FindWindow(..)
の結果はjava.lang.NullPointerException: Cannot invoke method FindWindow() on null object
java - JNA / JNIを使用して実行中のアプリのインスタンスにアクセスすることは可能ですか?
Cで記述されたコードの一部を含むJavaアプリケーションのテストエンジンを作成しています。このアプリケーションは、JNIを使用してネイティブ部分にアクセスします。
私が書いているエンジンでは、Festを使用してUIを制御し、テストを実行します。ただし、Cで記述された部分を処理するときは、私は盲目です。JNAまたはJNIを使用して、アプリのネイティブ部分にアクセスできるかどうか疑問に思います。ここでは、アプリケーションがすでに実行されているという事実が大きな問題であると思います。
dll - Javaアプリケーションを使用したCANコントローラーDLL。CANポートを開くことができません
ベンダー提供のcan.dllファイルを介してコントローラーエリアネットワーク(CAN)コントローラーを制御するJavaアプリケーションを作成しています。
can.dllには、アプリケーションがCANコントローラーとの接続を確立できるようにする関数bool openPort(DWORD memAddr)が含まれています。
私はC++テストアプリケーションを作成し、LoadLibraryを介してcan.dllをロードしましたが、この関数が正常に機能していることがわかりました。つまり、trueを返します。
ただし、私のJavaアプリケーションでは、これをJNIまたはJNA経由で呼び出すとfalseが返されます。
私はこの問題を1週間以上修正しようとしているので、誰かがこの問題について私を助けてくれることを願っています。
ありがとう:)JL
java - Windows の JNA キーボード フック
Windows にキーボード フックをインストールするための JNA コードをまとめました (JNA の例を使用)。コードはすべてコンパイルされ、フックがインストールされます (フックへのハンドルが正常に取得されます)。また、フックを正常にアンインストールできます。ただし、キーボードのキーを押してもコールバックは呼び出されません。これが私のコードです(ほとんどはJNAの例から取得した型定義です。私の部分では「メイン」に直接移動してください)
過去に C++ と C# の両方を使用して、キーボード/マウス フックを数回実行しました。これは Java での初めての試みであり、ライブラリを正しくインポートしてマップしたかどうかはわかりません。何か案は?
ありがとうございました。
java - JNAユニオン構造マッピング
JNAでは、Xlibから次のXEventのようなユニオン構造をどのようにマッピングしますか
I want to be able later on to cast the XEvent in JNA to other events (like XKeyEvent, XButtonEvent, XMotionEvent ...etc) based on the type of the event received.
I am not asking for a full mapping for all the structures above. A clear explanation with a small example on how to do it will be enough.
Thanks
java - JNA の Void* の例
JNA で void* の例を見つけるのに苦労しています。JNAでポインターを使用する方法を理解しようとしています。
例えば
で C:
JNAを使用してJavaでそれをどのように記述しますか? 私はJAVAでこれを試しました
myLib.PTOsetApiOpt が呼び出されると、JVM がクラッシュします。これは、新しい Pointer ステートメントが原因であると推測しています。ポインターを作成し、JVM クラッシュなしでパラメーターとして使用するにはどうすればよいですか? 私はそれに2日間立ち往生しています。どんなヒントも素晴らしいでしょう。前もって感謝します。
よろしく、 -Vid-
java - JNA - void* 引数を持つコールバック メソッド
コールバック メソッドをベンダー提供の dll に登録する C メソッドがあります。DLL は、それが作成して制御する別のスレッドでコールバックを作成すると言われています。受信コールバックによって受信できる 3 つの異なるデータ メッセージがあります。
JNAERATOR を使用して、以下のセグメント コードを生成する Java インターフェイス コードを作成しました。
以下に示すように、dll からコールバックを確実に取得できるように、単純なメイン メソッドでコードを実行しました。
テストを実行すると、コールバックが dll に正常に登録されます。しかし、後で dll がコールバック メソッドを呼び出そうとすると、JAVA のコールバック メソッドに到達する前に jvm がクラッシュします。例外レポートには、「"0x0b543a46" の命令が "0x0651acc" のメモリを参照しました。メモリを「読み取る」ことができませんでした」と表示されます。コールバックの Pointer が失敗していると思われます。私のコードに何か問題がありますか? コールバックの Pointer オブジェクトに必要なものはありますか? JVM がクラッシュしたときに生成された以下の例外レポートを読むことができません。どうぞよろしくお願いいたします。