![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
こんにちわ
JavaからC++のプログラムを呼び出し、ハードウェアを動かすプログラムを開発しているんですが
Javaでプログラムを起動し、C++を呼び出して終了すると
Javaプログラムと同一ディレクトリ内にlogファイルが生成され、困っております。
インターネットで調べたところ、JavaVMのエラーまたはレジストリのエラー
ということがぼんやりわかった程度で、解決策が見つけ出せずにおります。
インターネットでインストールをしなおすと直るとあったので
Javaのインストールをやり直してみたり、logファイルを和訳してみたりしましたが
状況が変わらないためご相談させて頂きます。
どなたかおわかりになる方、少しの情報でもかまいませんので
ご回答宜しくお願い致します。
eclipseコンソール上のエラー文です。logファイルについては文字数制限のためオーバしてしまいました。
内容↓
#
# A fatal error has been detected by the Java Runtime Environment:
#
# EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x06722cd2, pid=5572, tid=4244
#
# JRE version: 7.0_05-b05
# Java VM: Java HotSpot(TM) Client VM (23.1-b03 mixed mode, sharing windows-x86 )
# Problematic frame:
# C [PCardRW32.dll+0x22cd2] crwSetLineControl+0x203b2
#
# Failed to write core dump. Minidumps are not enabled by default on client versions of Windows
#
# An error report file with more information is saved as:
# C:\eclipse\workspace\ReWriteCard\hs_err_pid5572.log
#
# If you would like to submit a bug report, please visit:
# http://bugreport.sun.com/bugreport/crash.jsp
#
No.1ベストアンサー
- 回答日時:
JavaVMやレジストリを疑う前に自分らで作った部分を疑うべきだと思うんですが。
># Problematic frame:
># C [PCardRW32.dll+0x22cd2] crwSetLineControl+0x203b2
PCardRW32.dllに何か見覚えありませんか?
私も最近JNIやってますけど、JavaVMがクラッシュするのはたいてい自分たちが作った部分に問題があるのが原因ですよ。
この回答への補足
ご回答ありがとうございます
PCardRW32.dllの
crwSetLineControl関数は他業者さんが提供されている関数でして
crwSetLineControl関数もプログラムの中では記述してないので
何だろうと思ってはいたんですが、やはりこれが原因の可能性が高いのでしょうか
No.3
- 回答日時:
>ですが、プログラムではcrwSetLineControlは記述してないので
>別の関数がcrwSetLineControlを呼び出しているかもしれないので
>そこを調べてみます
あまりcrwSetLineControlに固執しないでくださいね。
># C [PCardRW32.dll+0x22cd2] crwSetLineControl+0x203b2
は、crwSetLineControlのアドレスから+0x203b2の所というだけでcrwSetLineControl関数内とは限りませんので(その場所を表現するのに一番近くのシンボルがcrwSetLineControlだったという事です)
また転記できなかったログの中にはスタックトレースもあると思いますので活用されるとよいかと思います。
お世話になっております。
しばらく調べさせていただき、わかったことは
・BSTRの操作は無関係
・他社製dllのメモリアクセス違反
ということです。
dllを開発された企業に問合せを行ったところ、
Javaには対応していないのでわかりかねる。
との回答を頂き、これ以上良くなることはないかと考えております。
どこで何がアクセス違反を起こしているのかは、今後調べて参りますが
大変難しい作業であると思います。
お忙しい中ご回答頂きまして、大変ありがとうございました。
これに懲りず、また質問させて頂きますので
今後共宜しくお願い致します。
No.2
- 回答日時:
それが原因なのかもしれないし、
それの使い方が悪いのかもしれないし
それは調べてみないとわかりません。
エラーが起きてるところが原因とは限りません。
例:
strcpy(NULL, "null");
strcpyでセグメンテーションエラーが起きるはずですが、strcpyが原因だと思いますか?
この回答への補足
ご回答ありがとうございます
なるほど
そちらの例ですと、10:0で使い方が悪いですね
ですが、プログラムではcrwSetLineControlは記述してないので
別の関数がcrwSetLineControlを呼び出しているかもしれないので
そこを調べてみます
ありがとうございます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- MySQL 参考書に従って入力したつもりでしたが、最後はエラーがでました。 1 2022/09/28 03:45
- Java マイクラjavaでForgeを入れたいのですが、インストールした.jarファイルが展開されてしまい中 1 2023/07/28 22:30
- Windows 10 VirtualBox 7のゲストOSでの物理HDDパーティションのマウント方法 2 2023/05/04 13:01
- C言語・C++・C# 至急お願いします。C言語で.imgのファイルを読み込んで1バイトづつ出力するプログラムを作りたいので 3 2023/01/16 22:49
- その他(SNS・コミュニケーションサービス) 自分のpcがハッキングされたようなメールが来たのですがどうすればいいですか? 4 2022/10/02 16:14
- 英語 下記はなんていってますか? こんにちは以降、訳していただけたら助かります。 Hello, We’re 1 2023/01/14 00:09
- Java Java プログラム public class Main { public static void 3 2023/08/10 23:46
- UNIX・Linux ubuntuのサーバー(virtual box)が、再起動するとデータが消えてしまいます。 4 2022/04/27 21:29
- UNIX・Linux Kali Linuxで起動できない - Minimal BASH Like Line Editing 1 2022/06/03 13:14
- その他(SNS・コミュニケーションサービス) 爆サイやっていたら、下のような文字が出ました! これは何なのでしょうか? nginx error! 1 2023/06/09 12:27
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Eclipseで、プロジェクト名のと...
-
Win32コンソールアプリでnamesp...
-
コンパイル時にエラーが出てし...
-
「型 ArrayList は総称ではあり...
-
タグが閉じてないというエラー...
-
getParameterについて
-
JSP/サーブレットで一般的な入...
-
PostgreSQLに接続できません
-
tomcat起動時エラー
-
enum列挙子に使える文字列と使...
-
Antでのビルドにエラー
-
【ジェネリックス】コンパイル...
-
JSPのIF文を教えて下さい
-
S2daoのSqlファイルでのDBア...
-
Eclipseで次のエラー箇所にジャ...
-
Java JNI使用後にログファイル...
-
for,while文とreturn
-
DataSetのFilter
-
エラー:org.springframeworkが...
-
致命的: StandardServer.await:...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Eclipseで、プロジェクト名のと...
-
タグが閉じてないというエラー...
-
エラー:org.springframeworkが...
-
シンボルが見つかりませんとい...
-
構文エラーのやり直しについて
-
JSP内でString型からint型に変...
-
Javaのエラーについてです
-
tomcat起動時エラー
-
Eclipseで次のエラー箇所にジャ...
-
JSPのIF文を教えて下さい
-
eclipseをバージョンアップした...
-
eclipseでのsvn認証エラー回避方法
-
コンパイル時にエラーが出てし...
-
getParameterについて
-
JAVAでアルファベットを数...
-
「型 ArrayList は総称ではあり...
-
Win32コンソールアプリでnamesp...
-
enum列挙子に使える文字列と使...
-
Eclipseの環境について
-
java eclipse apache tomcat 9....
おすすめ情報