私は UMDH を使用するのが初めてで、UMDH が出力しているいくつかのエラーを処理する方法を理解するのに苦労しています。私は典型的な使用法に従います(MSサイトから):
gflags -i OCES.exe +ust
別の端末ウィンドウで:
OCES.exe
そして、元のターミナル ウィンドウに戻ります。
umdh -p:5712 -f:out1.txt
しかし、UMDH から次の警告が表示されます
Warning:
Warning: UMDH didn't find any allocations that have stacks collected.
Warning: Use gflags to enable allocation stack collection.
Warning: Restart the application for the setting to be in effect.
Warning: A 32bit GFLAGS must be used. The command is:
Warning: gflags -i OCES.exe +ust
Warning:
UMDH の 2 回目の呼び出しを行うと、同じエラーが発生し、UMDH を使用して 2 つのスナップショットを比較すると、有用な出力が得られません (スタックやバックトレースはありません)。別のコンピューターで UMDH を使用しましたが、同じ問題は発生しませんでした (別のコンピューターは使用できなくなりました)。
UMDH のインストールは、「Windows 用デバッグ ツール」コレクションの 32 ビット バージョンからのもので、WinXP Professional の 32 ビット バージョンを実行しており、私のソフトウェアは Visual Studio 2008 を使用する C++ です。
これらの警告を検索しましたが、有用なものは見つかりませんでした。どんな助けでも大歓迎です。