タグ

2021年7月8日のブックマーク (3件)

  • Windows Error Reportを使ってプロセスがクラッシュした際のダンプファイルを取得できるようにする設定方法

    Windows7(Windows10は未確認)、Windows Server 2008以降のOSでプロセスがクラッシュした際にクラッシュしたプロセスのダンプファイルを採取することができます。 Windows Error Reportにちょっとしたレジストリ設定を追加するだけです。 Windows XP時代のUser Mode Process Dumper(userdump)と似たような機能を提供してくれます。 以下にWindows Error Reportの追加設定手順を覚書。 Windows Error Reportでクラッシュしたプロセスのダンプを採取するための設定 設定には、Administrator権限でログインする必要があります。 設定手順 最初に設定したいクライアントもしくは、サーバーにログインします。 [Windows]キー + [R]キーを押して[ファイル名を指定して実行]

    Windows Error Reportを使ってプロセスがクラッシュした際のダンプファイルを取得できるようにする設定方法
  • 『メモリリークな話 その1』

    akusanのブログゲーム、プログラミングなどなど種々雑多に興味あるものをのせております。プログラミングはたまにコード自体を載せております。 最近、仕事でメモリリークの解析をしていてかなり大変な感じに・・・。 メモリリークは当に発見するのが難しい・・・。 しかも、諸事情により実行できないところがきついですね・・・。 ソースコードのみからやっているので・・・。 C、C++はメモリリークしやすいのはしょうがないことですが、 メモリリークをしないように確実にnewしたらdeleteをするのが重要ですよね~。 あとは、ライブラリで確実にInitializeしたら、terminateとかそういった操作が必要ですね。 メモリリークの解析手法の一つとして、Visual Studioならば、以下の関数を使うとツールを 必要とせずにメモリリークの検出ができます。 _CrtDumpMemoryLeaks()

    『メモリリークな話 その1』
    babydaemons
    babydaemons 2021/07/08
    _CrtDumpMemoryLeaks()
  • VCでメモリリーク箇所をログに出力する方法 - Geospatialにっき

    以下のブログにあるようにMSVC CRTのメモリリーク検知機能でVisual Studioのデバッグ出力ウィンドウにリーク箇所を出力可能。このメッセージをログファイルに出力する方法を調べたのでメモ。 備忘録 - [Windows] CRT のメモリリークデバッグ - http://limejuicer.blog66.fc2.com/blog-entry-14.html // STLやBoost等ヘッダはnewの置き換えによってコンパイルエラーが出ることが // あるので、先にインクルードしておく #include <vector> // メモリリーク検知のための必要なヘッダ、定義 #define _CRTDBG_MAP_ALLOC #include <crtdbg.h> #define new ::new(_NORMAL_BLOCK, __FILE__, __LINE__) int mai

    babydaemons
    babydaemons 2021/07/08
    “VCのCRTにはこのデバッグ検知時の処理をフックするイベントハンドラを登録する_CrtSetReportHookW2というAPIがあり、このコールバック関数でログファイルに出力できる”