次の方法で共有


シンボルを使用しないユーザーモード プロセスのデバッグ

ユーザー モード エラーのデバッガーを開始する前に、障害が発生しているコンピューターにシンボルを配置することが重要です。 ただし、シンボルなしでデバッガーが開始される場合があります。 問題が簡単に再現できる場合は、シンボルをコピーして再実行するだけです。 ただし、問題が再び発生しない可能性がある場合は、エラーから一部の情報を収集できます。

  1. アドレスの意味を把握するには、エラーと一致するコンピューターが必要となります。 同じプラットフォーム (x86 または x64) で、同じバージョンの Windows で読み込む必要があります。

  2. コンピューターを構成したら、ユーザーモード シンボルとデバッグするバイナリを新しいマシンにコピーします。

  3. シンボルのないコンピューターで CDB または WinDbg を起動します。

  4. シンボルのないコンピューターでエラーとなったアプリケーションがわからない場合は、 | (プロセスのステータス) コマンドを発行します。 それでも名前がわからない場合は、シンボルのないマシンで KD に分割し、!process 0 0 を実行して、CDB コマンドによって指定されたプロセス ID を探します。

  5. 2 つのデバッガーが設定されている場合は、1 つはエラーにヒットしていないシンボルを持ち、もう 1 つはエラーにヒットしたがシンボルがない -- シンボルのないコンピューターで k (Display Stack Backtrace) コマンドを発行します。

  6. シンボルを使用したマシンで、シンボルのないスタックで指定されたアドレスごとに u (Unassemble) コマンドを発行します。 これにより、シンボルのないマシンでのエラーのスタック トレースが取得できます。

  7. スタック トレースを調べることで、呼び出しに関係するモジュール名と関数名が表示されます。