次の方法で共有


WindowsInspectString2 関数 (winstring.h)

デバッガーが別のアドレス空間、リモート、またはダンプからWindows ランタイム HSTRING の値を表示する方法を提供します。

構文

HRESULT WindowsInspectString2(
  UINT64                     targetHString,
  USHORT                     machine,
  PINSPECT_HSTRING_CALLBACK2 callback,
  void                       *context,
  UINT32                     *length,
  UINT64                     *targetStringAddress
);

パラメーター

targetHString

[入力]

検査する HSTRING

machine

ターゲット アドレス空間の形式。 有効な値は、Win64 の 場合はIMAGE_FILE_MACHINE_AMD64 、Win32 の 場合はIMAGE_FILE_MACHINE_I386 、32 ビット ARM の 場合はIMAGE_FILE_MACHINE_ARM です。

callback

[入力]

ターゲット アドレス空間から文字列バッファーを読み取るコールバック関数。 この関数は、 length パラメーターと targetStringAddress パラメーターが WindowsInspectString2 関数によって計算される前に呼び出されます。

context

[in, optional]

コールバックに渡されるカスタム コンテキスト データ。

length

[出力]

コールバックの呼び出しが成功した場合のターゲット アドレス空間内の文字列の長さ。それ以外の場合は 0。

targetStringAddress

[出力]

コールバックの呼び出しが成功した場合の、生の PCWSTR のターゲット アドレス。それ以外の場合は NULL

戻り値

この関数は、これらの値のいずれかを返すことができます。

リターン コード 説明
E_INVALIDARG
  • マシンの値がIMAGE_FILE_MACHINE_AMD64IMAGE_FILE_MACHINE_I386、またはIMAGE_FILE_MACHINE_ARMまたは
  • targetHString が正しい形式の HSTRING ではありません。

注釈

WindowsInspectString 関数は、入力ポインターと出力ポインターをネイティブ ポインター サイズの値として渡します。 現在のプラットフォームが Win32 の場合、その関数は Win64 であるプロセスに対してエラーを返します。

WindowsInspectString2 では、Win32 アプリケーションと Win64 アプリケーションの両方から呼び出されたときに最大 64 ビット値を許可することで、クロスアーキテクチャ デバッグが可能になります。

要件

   
サポートされている最小のクライアント Windows 8
サポートされている最小のサーバー Windows Server 2012
対象プラットフォーム Windows
ヘッダー winstring.h
Library RuntimeObject.lib
[DLL] ComBase.dll

こちらもご覧ください

HSTRING

PINSPECT_HSTRING_CALLBACK

WindowsCreateString

WindowsInspectString