• ベストアンサー

アプリケーション不具合時にメモリダンプをする方法

OS内部の関数で問題が起きたときはOSの機能でメモリダンプをファイルにすることができますが、通常のユーザーアプリケーション不具合時にメモリダンプをファイルにする方法はありますか? またそれを解析するようなツールはありますでしょうか?(WinDBGみたいな) OSはwinXP、開発コードはVB6.0です。よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • PED02744
  • ベストアンサー率40% (157/390)
回答No.1

http://www.microsoft.com/japan/windowsserver2003/downloads/supporttools.mspx これが使えないでしょうか? よくわかりませんが、「User Mode Process Dumper」があなたの おっしゃっている機能のような気がしますが。。

subarist00
質問者

お礼

有難うございます。まさにこれです。アプリケーションを指定してメモリダンプを作成する事ができました。 しかし、使ってみるとミニダンプにしても1回1回ディスクにファイルを書きに行っているのがクリティカルになっているようで、プログラムの実行速度が異常に遅くなります。設定はアクセス違反だけを見張っているのですが昔みたいにRAMディスクでも作ればいいのかもしれませんね。

関連するQ&A

  • アプリケーションの強制終了の原因究明方法(デバッグ)に関して

    問題のアプリケーションはVB6.0で開発されています。動作環境はwinXP SP2です。 自分で開発しているわけではないのですが、社内で使用しているソフトが最近頻繁に 強制終了するので原因を調べたいと思います。しかし、特定の操作でハングアップす るわけではなく、同じ操作をしても普通に動作することもあるし、エラーに再現性が 無くて困っています。 よく強制終了のときに「microsoftに送信しますか」とか出てくる奴なのですが、見て みると問題を起こした関数の入っているファイルの名前や、その命令のあるメモリの アドレスぐらいは出てきます。 しかし具合的に何の命令なのかはわからないし、VC++6.0のデバッガーでアセンブラ で見ても何のことやらさっぱりわかりません。 ネットで検索してWindbgなるものを入れてみたのですが、Minidumpフォルダにダンプ フィルがあるのかと思って探してみても見つからないし、少し行き詰っています。 具体的にエラーストップした命令周辺のコードやそのコードを含むモジュール名など、 もう少し突っ込んだ情報を見られる方法は無いものかと探しています。もちろん、 バッファーオーバーランのように、ストップ箇所=問題箇所とは限らないこともわか っています。 自分でソースコードを持っているわけではないので、コードまでは見られないのかも しれないし、自分で見る必要も無いのかもしれませんが、開発者に状況を伝えるため にもう少し問題箇所の特定につながる情報がほしいと思っています。デバッグの方法 について教えていただけますでしょうか。 よろしくお願いします。

  • メモリダンプファイルサイズの設定方法を教えてください。

    以下についてどなたかご存知の方がいらっしゃいましたら教えてください。 PC立上時に、『メモリダンプ収集設定確認』という ダイアログが表示されてしまいます。 トラブルシューティングをみたところ、実際にPCに実装しているメモリ容量と メモリダンプファイルサイズがアンマッチのために出ているとのことで、 「メモリダンプファイルサイズを再度設定しなおして下さい。」とのことですが 肝心の設定方法がわからずに困っています。 ご存知の方がいらっしゃいましたらご教授願います。 OSはWindowsServer2003です。 よろしくお願い致します。

  • インストール後の不具合について(VB6.0)

    VB6.0でアプリケーションを開発しています。 実行ファイルを作成し、起動したところ、正常に動きました。 しかし、インストール後の実行ファイルは起動するのですが不具合が生じます。 (ディストリビューションウィザードでSetup.exeを作成し、インストールしました。) 正常に動く部分もありますが、あるコマンドボタンをクリックすると、固まってしまい、アプリケーション名の右に(応答なし)と表示されます。 コードに問題があるのでしょうか? 開発環境は以下の通りです。 OS:WindowsXP SP2 DB:Access2003 VB6.0からAccess 2003への接続方法はADOです。 宜しくお願いします。

  • 接続の切れたアプリケーション

    現在、ORACLE10.1.2+VB.NETで開発を行っています。 どちらに質問するか迷ったんですが、こちらに書かせて 頂きます。 作成したアプリケーションをC/Sで起動を行い。 その後、クライアントのネットワーク接続を切断すると、 アプリケーションの接続は回復するのですが、ORACLEの接続が 回復するアプリケーションと回復しないアプリケーションが 存在します。 この様な症状に心当たりがある人は何かご教授願えないでしょうか? DBの接続自体は、某ツールに任せているんで、内部的なことは まったくわかりません。このようなツールは使いたくないですね・・

  • VBとC#の違いって何?

    Visual Basic 2008 Express EditionとVisual C# 2008の違いって、 何ですか? MS社の記述では、 [VB] Windows アプリケーションの楽しく簡単な作成方法に興味を持つ、 趣味で開発を行うユーザー、プログラミング初心者、および学生に 最適な開発ツールです。 [C#] ダイナミックなアプリケーションを開発するための、 シンプルで楽しく、学びやすい開発ツールです。 .NET Framework 上で Windows 用アプリケーションを開発するときや、 オブジェクト指向を学ぶときに最適です。 と書かれているのですが、 機能数、不具合数はどっちが多いのでしょうか? VB,C#も同じ様なダイナミックアプリケーションを開発でき、 シンプルなのですが・・・。未だ区別が付きません。 C#の場合、フォーム等の詳細設定は出来ますが、 VBでは簡易設定のみ。 ソフトウェア開発をする場合、どっちが得をするのか? ↑の回答をお待ちしてます。

  • 別のアプリケーションのテキストフィールドに入力する方法

    他のアプリケーションのテキストフィールドがフォーカスを持っていて、そこにテンキーの「1」を入力した場合、「おはよう」と表示され、さらに改行コードも送れるプログラムを作りたいと思っています。 ヒントが掲載されているHPや書籍などの情報があれば教えていただきたいと思います。 また、お手数でなければ、具体的なコードも教えていただければありがたいです。 開発環境は VB6、OSはXP ProSP2 です。

  • pg_dumpのバッチ実行

    Windows2008環境で、PostgreSQL8xを開発しています。 日次のバックアップで、DOSバッチからpg_dumpコマンドを実行し、 ダンプを取りたいと思います。 そこでサンプルを作成し、実行したのですが、 途中パスワードを聞かれてしまい、止まってしまいます。 実行は下記のコマンドです。 >>pg_dump -U User01 -Fc testdb > backup.dat パスワードファイル、というファイルに 「ホスト名:ユーザ名:パスワード:DB」User01の エントリを追加したところ、パスワードが聞かれなくなりました。 これはマニュアルどおりだと思います。 ただファイルにユーザ毎にパスワードを書くのもどうもイマイチで 他の方法が無いか調べています。 ・パスワードを聞かれない管理ユーザで実行する ・実はpg_dumpでパスワードを指定するパラメータがある とかあれば良いのですが・・ パスワードファイル以外に、回避方法は ありますでしょうか?。

  • 「メモリが"read"...」アプリケーションエラーが出るんですが

    お世話になります、現在Win2000、VB6.0 Spread3.0Jを使って 開発を行っているのですが、以下のエラーが出てしまいます。 -アプリケーションエラー- 「"0xfa6a94e8"の命令が"0xfa694e8"のメモリを参照しました。メモリが"read"になることは出来ませんでした。 プログラムを終了するには「OK」ボタンをクリックしてください。」 Spread3.0JがWin2000で動作確認されていないのが原因なのでしょうか? 解決方法等の情報をお持ちの方よろしくお願いします。

  • Windowsのクラッシュダンプ解析でソースが見れない

    Windowsのクラッシュダンプ解析でソースが見れない 表題の件ですが、あるMFCアプリケーションを開発しておりまして、その際にミニダンプを例外発生時に出すようにしております。このダンプをVisualStudio2008で開き、VisualStudioDebuggerで走らせて見たときに、ビルド時に生成されたpdbも同時に読み込んでいるのですが、自分で書いた部分のソースだけ見れません。MFCのソース等はコールスタックウィンドウから飛んでくれます。 似たようなことを別のアプリで行っていたときは自分で書いたソースも見れていたのですが、ちょっと理由を調べられなくて困っています。 どなたかお分かりになられる方おられましたらご教授願えれば幸いです。

  • アプリケーションのメモリが不明です。

    OS8.6です。メモリの割り当てを変更する、という作業がしたいのですが、 例えばPageMill3.0などのアプリケーションをクリックし、ファイルメニューから「情報を見る」を選択するとサブメニューは「一般情報」と「共有」だけで、肝心の「メモリ」の項目がないんです。何が原因でこういう状態に陥っているのでしょうか?自力で原因究明出来ない無知が辛いです(-_-;)。可能性の御指摘よろしく何とぞお願い致します~~~!

    • ベストアンサー
    • Mac

専門家に質問してみよう