IDebugSymbols::GetOffsetByName メソッド (dbgeng.h)
GetOffsetByName メソッドは、名前で識別されるシンボルの場所を返します。
構文
HRESULT GetOffsetByName(
[in] PCSTR Symbol,
[out] PULONG64 Offset
);
パラメーター
[in] Symbol
検索するシンボルの名前を指定します。 この名前は、モジュール名 (例: mymodule!main) で修飾できます。
[out] Offset
シンボルのメモリ割り当てのベースのターゲットのメモリ アドレス空間内の場所を受け取ります。
戻り値
このメソッドは、他のエラー値を返す場合もあります。 詳細については 戻り値の を参照してください。
リターン コード | 形容 |
---|---|
|
メソッドが成功しました。 |
|
メソッドが成功しました。 ただし、シンボル 名前が一意ではなく、その名前を持つ複数のシンボルが見つかりました。 これらのシンボルの 1 つが任意に選択され、返されました。 |
|
指定した名前のシンボルが見つかりませんでした。 |
備考
シンボル 名前が一意ではなく、GetOffsetByName その名前を持つ複数のシンボルを検索すると、あいまいさが任意に解決されます。 この場合、S_FALSE値が返されます。 StartSymbolMatch を使用して、検索を開始して、目的の結果を特定できます。
getNameByOffset は、パターン マッチング (ワイルドカードなど) をサポートしていません。 パターン マッチングを使用してシンボルを検索するには、StartSymbolMatch 使用します。
シンボルのモジュール名がわかっている場合は、シンボル名をモジュール名で修飾することをお勧めします。 それ以外の場合、エンジンは一致するものが見つかるまで、すべてのモジュールのシンボルを検索します。多くのモジュールのシンボル ファイルを読み込む必要がある場合は、これには長い時間がかかる場合があります。 シンボル名がモジュール名で修飾されている場合、エンジンはそのモジュールのシンボルのみを検索します。
シンボルとシンボル名の詳細については、「シンボルの 」を参照してください。
必要条件
要件 | 価値 |
---|---|
ターゲット プラットフォーム の | デスクトップ |
ヘッダー | dbgeng.h (Dbgeng.h を含む) |
関連項目
GetNameByOffset の
IDebugSymbols2 を する