次の方法で共有


DBH コマンド

DBH コマンド ラインから、さまざまなコマンドを使用してシンボルとシンボル ファイルを分析できます。

次の表に、DBH オプションを制御し、その他の基本的なタスクを実行するコマンドを示します。

command 効果

verbose [on|off]

詳細出力モードを有効または無効にします。 パラメーターを指定しない場合は、現在の詳細モードの設定が表示されます。

sympath [Path]

シンボル検索パスを設定します。 パラメーターを指定しない場合は、現在のシンボル検索パスが表示されます。

symopt Options

symopt +Options

symopt -Options

symopt

シンボル オプションを設定します。 +- が付いていない場合、Options の値は、現在のシンボル オプションに置き換えられます。 +- が使用されている場合、Options は、追加または削除するオプションを指定します。+- の前にはスペースを入れ、後ろにはスペースを入れません。 パラメーターを指定しない場合、現在のシンボル オプションが表示されます。 DBH の起動時、すべてのシンボル オプションの既定値は 0x10C13 です。 使用可能なオプションの一覧については、「シンボル オプションの設定」を参照してください。

help

DBH コマンドのヘルプ テキストを表示します。

quit

DBH プログラムを終了します。

次の表に、ターゲット モジュールの読み込み、アンロード、およびリベースを行うコマンドを示します。 コマンド ラインでプロセス ID を指定して DBH を開始した場合、これらのコマンドは使用できません。

command 効果

load File

指定したモジュールを読み込みます。 File には、実行可能ファイルまたはシンボル ファイルのパス、ファイル名、およびファイル名拡張子を指定します。

unload

現在のモジュールをアンロードします。

base Address

既定のベース アドレスを指定した値に設定します。 すべてのシンボル アドレスは、このベース アドレスを基準にして決定されます。

次の表に、ファイルを検索し、ディレクトリ情報を表示するコマンドを示します。

command 効果

findexe File パス

FindExecutableImage ルーチンを使用して、指定したパス内の指定した実行可能ファイルを検索します。

finddbg File パス

指定したパス内の指定した .dbg ファイルを検索します。 .dbg 拡張機能の組み込みは省略可能です。

dir File パス

EnumDirTree ルーチンを使用して、指定したパスまたはこのパスの下の任意のサブディレクトリで、指定したファイルを検索します。

srchtree Path ファイル

SearchTreeForFile ルーチンを使用して、指定したパスまたはこのパスの下の任意のサブディレクトリで、指定したファイルを検索します。 このコマンドは dir と同じですが、パラメーターが逆になっている点が異なります。

ffpath File

現在のシンボル パス内の指定したファイルを検索します。

次の表に、モジュールの一覧を解析し、既定のモジュールを制御するコマンドを示します。 既定のモジュールとそのベース アドレスが DBH プロンプトに表示されます。

command 効果

mod Address

既定のモジュールを、指定したベース アドレスを持つモジュールに変更します。

refresh

モジュールの一覧を更新します。

omap

モジュール OMAP 構造体を表示します。

epmod PID

指定したプロセスに対して読み込まれたすべてのモジュールを列挙します。 PID は、目的のプロセスのプロセス ID を指定します。

info

現在ロードされているモジュールに関する情報を表示します。

obj Mask

指定したパターンに一致する既定のモジュールに関連付けられているすべてのオブジェクト ファイルを一覧表示します。 Mask には、さまざまなワイルドカードや指定子を指定できます。詳細については「文字列ワイルドカード構文」を参照してください。

src Mask

指定したパターンに一致する既定のモジュールに関連付けられているすべてのソース ファイルを一覧表示します。 Mask には、さまざまなワイルドカードや指定子を指定できます。詳細については「文字列ワイルドカード構文」を参照してください。

enummod

読み込まれたすべてのモジュールを列挙します。 DBH がターゲットなしで実行されていない限り、少なくとも 1 つのモジュールが常に存在します。DBH がターゲットなしで実行されている場合、モジュールが存在しません。

次の表に、シンボルを表示および検索するコマンドの一覧を示します。

command 効果

enum Module!記号

指定したモジュールとシンボルに一致するすべてのシンボルを列挙します。 Module は、検索するモジュールを指定します (ファイル名の拡張子は指定しません)。 Symbol はシンボルに含める必要があるパターンを指定します。 ModuleSymbol の両方には、さまざまなワイルドカードや指定子を指定できます。詳細については「文字列ワイルドカード構文」を参照してください。

enumaddr Address

指定したアドレスに関連付けられているすべてのシンボルを列挙します。

addr Address

指定したアドレスに関連付けられているシンボルに関する詳細情報を表示します。

name [Module!]Symbol

指定したシンボルの詳細情報を表示します。 Module 指定子 (省略可能) を含めることができます。 複数のシンボルがパターンと一致する場合、名前は最初のシンボルのみを表示するため、ワイルドカードは使用しないでください。

next [Module!]Symbol

next Address

指定したシンボルまたはアドレスの後の、次のシンボルに関する詳細情報を表示します。 シンボルが名前で指定されている場合は、Module 指定子 (省略可能) を含めることができますが、ワイルドカードは使用しないでください。

prev [Module!]Symbol

prev Address

指定したシンボルまたはアドレスの前の、最初のシンボルに関する詳細情報を表示します。 シンボルが名前で指定されている場合は、Module 指定子 (省略可能) を含めることができますが、ワイルドカードは使用しないでください。

line File#LineNum

指定したソース行に関連付けられているバイナリ命令の 16 進数アドレスと、この行に関連付けられているすべてのシンボルを表示します。 また、現在の行番号を指定した行番号と同じ値に設定します。 File はソース ファイルの名前を指定し、LineNum はそのファイル内の行番号を指定します。これらは、番号記号 (#) で区切る必要があります。

srclines File LineNum

指定したソース行に関連付けられているオブジェクト ファイルと、この行に関連付けられているバイナリ命令の 16 進アドレスを表示します。 現在の行番号は変更されません。 File はソース ファイルの名前を指定し、LineNum はそのファイル内の行番号を指定します。これらはスペースで区切る必要があります。

laddr Address

指定したアドレスにあるシンボルに対応するソース ファイルと行番号を表示します。

linenext

現在の行番号をインクリメントし、新しい行番号に関する情報を表示します。

lineprev

現在の行番号をデクリメントし、新しい行番号に関する情報を表示します。

locals Function [Mask]

指定した関数に含まれるすべてのローカル変数を表示します。 Mask が指定されている場合は、指定したパターンに一致するローカル変数のみが表示されます。詳細については、「文字列ワイルドカードの構文」を参照してください。

type TypeName

指定したデータ型の詳細情報を表示します。 TypeName は、データ型の名前 (WSTRING など) を指定します。 この値と一致する型名がない場合は、一致するシンボルが表示されます。 ほとんどの DBH コマンド パラメーターとは異なり、TypeName では大文字と小文字が区別されます。

elines [Source [Obj]]

指定したソース マスクとオブジェクト マスクに一致するすべてのソース行を列挙します。 Source は、絶対パスとファイル名拡張子を含む、ソース ファイルの名前を指定します。 Obj は、相対パスとファイル名拡張子を含む、オブジェクト ファイルの名前を指定します。 SourceObj の両方には、さまざまなワイルドカードや指定子を指定できます。詳細については「文字列ワイルドカード構文」を参照してください。 パラメーターを省略した場合、アスタリスク () ワイルドカードを使用した場合と同じ意味になります。 パス情報を指定しない場合は、パス名の先頭に </strong> を付けてワイルドカード パスを示します。

index Value

指定したインデックス値を持つシンボルに関する詳細情報を表示します。

scope Address

scope [Module!]Symbol

指定したシンボルの親に関する詳細情報を表示します。 シンボルは、アドレスまたは名前で指定できます。

srch [mask=Symbol] [index=Index] [tag=Tag] [addr=Address] [globals]

指定したマスクに一致するすべてのシンボルを検索します。 Symbol はシンボル名を指定します。 モジュール名は指定できませんが、ワイルドカード文字と指定子を指定することができます。詳細については、「文字列ワイルドカード構文」を参照してください。 Index は、検索の親として使用するシンボルの 16 進アドレスを指定します。 Tag は、シンボルと一致する必要がある 16 進数シンボル型分類子 (SymTagXxx) 値を指定します。 Address はシンボルのアドレスを指定します。 globals が含まれている場合は、グローバル シンボルのみが表示されます。

uw Address

指定したアドレスにある関数のアンワインド情報を表示します。

dtag

すべてのシンボル型分類子 (SymTagXxx) 値を表示します。

etypes

すべてのデータ型を列挙します。

dump

ターゲット ファイル内のすべてのシンボル情報の完全な一覧を表示します。

次の表に、シンボル サーバーとシンボル ストアに関連するコマンドを示します。

command 効果

home [Path]

既定のダウンストリーム ストアに SymSrv と SrcSrv によって使用されるホーム ディレクトリを設定します。 既定のダウンストリーム ストアを使用するシンボル サーバーへの参照がシンボル パスに含まれている場合は、 ホーム ディレクトリの sym サブディレクトリがダウンストリーム ストアに使用されます。 パラメーターを指定しない場合、 home は現在のホーム ディレクトリを表示します。

srvpath Path

指定したパスがシンボル ストアのパスであるかどうかをテストします。

srvind File

指定したファイルに対応するシンボル サーバーインデックスを検索します。 シンボル サーバー インデックスは、実際にシンボル ストアに追加されているかどうかに関係なく、ファイルの内容に基づく一意の値です。 File には、目的のファイルのファイル名と絶対パスを指定する必要があります。

fii File

指定したバイナリ ファイルとそれに関連付けられているファイルのシンボル サーバー インデックスを表示します。

getfile File Index

指定した名前とシンボル サーバーインデックスを持つファイルを表示します。 File は目的のファイルの名前を指定します。パスを含めることはできません。 Index は、目的のファイルのシンボル サーバー インデックスを指定します。 DBH は SymFindFileInPath ルーチンを使用して、現在のシンボル パスの下にあるツリーで、この名前とインデックスを持つファイルを検索します。

sup Path File1 File2

パラメーターの値に基づいて、シンボル ストアにファイルを格納します。 Path には、シンボル ストアのディレクトリ パスを指定します。 File1File2 は、デルタ値の作成に使用され、作成されたデルタ値は、格納されているファイルを決定するために使用されます。

storeadd File Store

指定したファイルを指定したシンボル ストアに追加します。 Store はシンボル ストアのルート パスである必要があります。

次の表に、実数記号と虚数記号に適用される DBH コマンドを示します。

command 効果

undec Name

指定したシンボル名に接続されている装飾の意味を表示します。 Name には任意の文字列を指定できます。現在読み込まれているシンボルに対応する必要はありません。 If Name に C++ 装飾が含まれている場合、これらの装飾の意味が表示されます。

add Name アドレス サイズ

DBH に読み込まれたシンボルの一覧に、指定した虚数記号を追加します。 Name は追加するシンボルの名前を指定します。Address は 16 進数のアドレスを指定します。Size は 16 進数のサイズをバイト単位で指定します。 これは、DBH セッションが quit または unload で終了するか、del で虚数記号が削除されるまで、後の DBH コマンドで他のシンボルと同様に扱われます。実際のターゲット シンボル ファイルは変更されません。

del Name

del Address

add コマンドで以前に追加された虚数記号を削除します。 シンボルは、名前またはアドレスで指定できます。 これを使用して実際のシンボルを削除することはできません。