C++のプログラム(実行ファイル内の関数)をJAVAプログラムからCALLする具体的なプログラム方法を教えてください。サンプルがあるとなおよいです。プラットフォームはLinux, Windowsをそれぞれ想定しています。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:--
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答3件)

id:wasisan No.1

回答回数86ベストアンサー獲得回数7

ポイント80pt

http://www.hellohiro.com/native.htm

JavaでHello World JNI編

JNI(Java Native Interface)

というAPIがあります。JNIで検索

すればたくさんサンプルはでてきます。

(URLはgoogle検索の一番上のサイト)

id:akunaki

助かります。情報ありがとう御座います。

2004/12/14 22:41:55
id:zizz_walla No.2

回答回数121ベストアンサー獲得回数0

ポイント100pt

JAVAプログラムからC++でかかれたプログラムを呼び出すには Java Native Interface を使用します。

エラー処理の解説も含めた実践的なサンプルがあります。

id:akunaki

情報ありがとう御座います。

追加で質問させてください。

(1)JNI対応の為にはC++開発環境に専用もしくはJNI対応のコンパイラが必要なのでしょうか?

(2)Visual Studioではだめでしょうか?

(3)VBで同様にJNIに対応した関数を作ることは可能なのでしょうか?

2004/12/14 22:46:53
id:zizz_walla No.3

回答回数121ベストアンサー獲得回数0

ポイント100pt

http://www.hatena.ne.jp/1103029796#

人力検索はてな - C++のプログラム(実行ファイル内の関数)をJAVAプログラムからCALLする具体的なプログラム方法を教えてください。サンプルがあるとなおよいです。プラットフォームはLinux, ..

追加の質問にお答えいたします。

 (1)JNI対応の為にはC++開発環境に専用もしくはJNI対応のコンパイラが必要なのでしょうか?

JNI対応のコンパイラというものは必要ありませんし、無いと思います。(無いというのは未確認です。)

(2)Visual Studioではだめでしょうか?

Visual Studioで開発することができます。

(3)VBで同様にJNIに対応した関数を作ることは可能なのでしょうか?

VBだと、JNIが想定しているDLLを作ることができないので、トリッキーな手法を使う必要があります。その手法は2通り考えられます。

1. CでJNIの皮関数を作成し、その中からVBのDLLを呼び出す。

2. VBをActiveX DLLとして作成し、Java-COM Bridgeで呼び出します。

id:akunaki

親切な回答本当にありがとう御座います。

2004/12/14 23:32:22

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません