• ベストアンサー

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

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の接続自体は、某ツールに任せているんで、内部的なことは まったくわかりません。このようなツールは使いたくないですね・・

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

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

  • 「メモリが"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
  • アプリケーションのパスワードの保存場所

    VBなどで作成したexeのアプリケーションで、パスワードなどを入力することがあるのですが、それ自体どこに保存しているのですか?どこかのディレクトリのファイルにでしょうか?それともexeファイル内部?教えてください。

  • ブルースクリーンの悪夢が蘇って来た...ダンプが

    詳しい方、助けて下さい! ●ブルースクリーンは何度も発生済にも関わらず C:\WINDOWS直下にMinidumpなるものが存在しないのは何故ですか? BlueScreenViewなるソフトでも、ダンプファイルは一つも見当たりませんでした。 現設定 起動と回復>設定 ・システムログにイベントを書き込む:CHオン ・自動的に再起動する:CHオフ:これをオンにしないと書き込まれない? ・デバッグ情報の書き込み:最少メモリダンプ(64KB) ・最少ダンプディレクトリ:%SystemRoot%\Minidump ●最少メモリダンプの他に、カーネルメモリダンプははあるが 完全ダンプなる物が無いのは何故か? 起動と回復>設定>デバッグ情報の書き込み欄に、完全ダンプなる物が選べるようになるとの事ですが、その方法とは? 前HDDで、100回以上もブルースクリーンが発生しているので、神経過敏になっています HDD交換後、の現在も発生し、憂鬱です... ●最少メモリダンプ選択時、必ず下記アラートが出ますが 「ボリューム C: のページ ファイルの初期サイズが 200 MB よりも小さい場合、システムは STOP エラーが発生してもデバッグ情報ファイルを作成できない可能性があります。続行しますか?」 これは、下記設定と関係がありますか? システム>パフォーマンス>詳細設定>仮想メモリ  Dのみ推奨値の4591MB設定  他全ドライブ:ページングファイルなし もしかして、Cにも少し?はページングファイルが無いとダンプファイル自体を作成できないのでしょうか? だとしたら、どの位を割り当てればよいのでしょうか? ・HDD:160Gから1Tへ交換後、約3か月 (前HDDは、週に10回位はブルースクリーンが発生し、やむなく交換 現HDDでも3か月間に2回ほどなりましたが、Flashのアクセラレータの設定を無効にしたら 発生しなくなったので安心していましたが、本日、Googleの検索結果をクリックしただけで ブルースクリーンが発生し、前HDDの悪夢が脳裏をよぎり、今に至ります...) ・システムの復元:無効 ・CPU:Intel Core2 6300 1.86GHz ・メモリ:4G ・OS:WinXP 32bit ------------------------------------------------------------ 無関係化もしれないが気になる記事 仮想メモリなし=0MBでもDMPファイルが作成された!?: Automatic http://crazy-man.cocolog-nifty.com/blog/2010/01/0mbdmp-a404.html CTX122110 - [起動と回復]ダイアログボックスで[カーネルメモリダンプ]が選択されているにもかかわらず、完全メモリダンプが生成される - Citrix Knowledge Center http://support.citrix.com/article/CTX122110 キーボード操作でメモリ ダンプ ファイルを作成できる Windows の機能 http://support.microsoft.com/kb/244139/ja

専門家に質問してみよう