2012-05-04 5 views
0

私はSysinternalのProcess Monitorを発見したばかりで、プロセスが行っていることについての洞察が大好きです。しかし、カーネルへのソフトウェア呼び出しの詳細を調べようとすると、スタックは「未知数」で埋められます。スタックトレースに関数名が表示されるように、アプリケーションをビルドする方法はありますか?Process Monitorでさらに多くのスタック情報を表示するアプリケーションを構築するには?

答えて

2

/Ziでコンパイルし、/ debugとリンクするだけで十分です。 アプリケーションのすべてのデバッグ情報を含むPDBファイルが必要です。実行可能ファイルまたはPDBを移動しない限り、プロセスモニタは通常、それを検出します。

アプリケーションのバージョンが複数ある場合、または他のマシンでコールスタックを調べたい場合は、Symbol Serverを設定する方がよい場合があります。次に、(symstoreユーティリティを使用して)すべてのEXEファイルとPDBファイルをSymbol Serverに格納し、Process MonitorがSymbol Serverを使用してデバッグ情報を見つけるようにシステムを設定する必要があります。 http://support.microsoft.com/kb/311503の情報はあなたの仕事を開始するはずです。

\\yourserver\symbolsが読み書き可能で共有だろうが、ちょうど同様にあなたの上のローカルパスである可能性があり
set _NT_SYMBOL_PATH=symsrv*symsrv.dll*\\yourserver\symbols*http://msdl.microsoft.com/download/symbols 

...:正常に動作します

一つの方法は、環境変数_NT_SYMBOL_PATHを設定することですコンピューター。これは、繰り返し使用するためにシンボルがキャッシュされる場所です。

+0

ありがとう、パトリックと@STATUS_ACCESS_DENIED、私はそれらを試してみよう! –

関連する問題