カスタム シンボル ストアとシンボル サーバー

デバッグ用にシンボルを正しく設定することは、特にカーネル デバッグの場合、困難な作業となる場合があります。 多くの場合、コンピューター上のすべての製品の名前とリリースを知っている必要があります。 デバッガーは、各製品リリースとサービス パックに対応する各シンボル ファイルを検索できる必要があります。

これにより、ディレクトリの長いリストで構成される非常に長いシンボル パスが生成される可能性があります。 シンボル ファイルの調整におけるこれらの困難を簡略化するために、シンボル ファイルをシンボル ストア 収集し、シンボル サーバー からアクセスできます。

シンボル ストア は、ファイルの追加と削除に管理者が使用できるシンボル ファイル、インデックス、およびツールのコレクションです。 シンボル ストアには、実行可能なイメージ ファイルを含めることもできます。

ファイルには、タイムスタンプや画像サイズなどの固有のパラメータに従ってインデックスが付けられます。 シンボル ストアには、シンボル サーバーを使用して抽出できる実行可能なイメージ ファイルを保持することもできます。 Windows 用デバッグ ツールには、 SymStoreと呼ばれるシンボル ストア ツールが含まれています。

デバッガーは、 シンボル サーバーを使用して、シンボル ストア内のファイルにアクセスします。 Windows 用デバッグ ツールには、シンボル ストア作成ツール、 SymStore、シンボル サーバー SymSrvの両方が含まれています。 また、 デバッガーがアクセスする必要がある可能性があるすべてのシンボル ストアのプロキシとして機能するようにネットワーク上に HTTP シンボル ストアを設定するためのツール SymProxy も含まれています。

シンボル サーバーを使用すると、デバッガーはシンボル ストア (シンボル ファイルのインデックス付きコレクション) から正しいシンボル ファイルを自動的に取得できます。この際、ユーザーは製品名、リリース、ビルド番号を知る必要がありません。 Windows 用デバッグ ツールには、 SymSrvと呼ばれるシンボル サーバーが含まれています。 シンボル サーバーは、シンボル パスに特定のテキスト文字列を含めることでアクティブ化されます。 デバッガーは、新しくロードされたモジュールのシンボルをロードする必要があるたびに、シンボル サーバーを呼び出して、適切なシンボル ファイルを見つけます。 シンボル サーバーの操作については、「Microsoft パブリック シンボル」を参照してください。

シンボル検索に SymSrv で提供されるメソッドとは異なる方法を使用する場合は、独自のシンボル サーバー DLL を開発できます。 このようなシンボル サーバーの実装の詳細については、「その他のシンボル サーバー 」を参照してください

このセクションには、次が含まれます。

HTTP シンボル ストア

ファイル共有 (SMB) デバッガー シンボル サーバー

シンボル ストアのフォルダー ツリー

その他のシンボル ストア

Windows シンボル ファイルのインストール

Windows Update のオフライン シンボル

独自のシンボル ストアを設定せず、パブリック Microsoft シンボル ストアを使用するだけの場合は、「Microsoft パブリック シンボル 」を参照してください

シンボル ユーティリティ

次のユーティリティを使用すると、大規模なソフトウェア開発プロジェクトでのシンボルの配布と制御が可能になります。

Utility 説明
SymProxy HTTP ベースのシンボル ストアを、クライアント コンピューターと他のシンボル ストア間のプロキシとして機能するように構成するために使用します。
SymStore SymStore (symstore.exe) は、シンボル ストアを作成するためのツールです。
AgeStore AgeStore ツール (agestore.exe) では、最後にアクセスした日付に基づいて、ディレクトリまたはディレクトリ ツリー内のファイルを削除できます。
DBH DBH ツール (dbh.exe) は、シンボル ファイルの内容に関する情報を表示するコマンドライン ツールです。
PDBCopy PDBCopy ツール (pdbcopy.exe) は、シンボル ファイルからプライベート シンボル情報を削除するコマンドライン ツールです。
SymChk SymChk (Microsoft シンボル チェッカー ツール) (Symchk.exe) は、実行可能ファイルをシンボル ファイルと比較するプログラムです。