SOS.dll (SOS デバッガー拡張)SOS.dll (SOS debugging extension)

SOS デバッガー拡張 (SOS.dll) を使用して内部の共通言語ランタイム (CLR: Common Language Runtime) 環境に関する情報を渡すことにより、Visual Studio および Windows デバッガー (WinDbg.exe) でマネージド プログラムをデバッグできます。The SOS Debugging Extension (SOS.dll) helps you debug managed programs in Visual Studio and in the Windows debugger (WinDbg.exe) by providing information about the internal Common Language Runtime (CLR) environment. このツールを使用するには、プロジェクトでアンマネージ デバッグが有効になっている必要があります。This tool requires your project to have unmanaged debugging enabled. SOS.dll は、.NET Framework と共に自動的にインストールされます。SOS.dll is automatically installed with the .NET Framework. Visual Studio で SOS.dll を使用するには、Windows ドライバー開発キット (WDK) をインストールします。To use SOS.dll in Visual Studio, install the Windows Driver Kit (WDK).

構文Syntax

![command] [options]

コマンドCommands

コマンドCommand 説明Description
AnalyzeOOM (ao)AnalyzeOOM (ao) ガベージ コレクション ヒープへの割り当て要求で発生した最後のメモリ不足 (OOM) に対する情報を表示します。Displays the information for the last out of memory (OOM) that occurred on an allocation request to the garbage collection heap. サーバーのガベージ コレクションでは、ガベージ コレクション ヒープごとに OOM を表示します (存在する場合)。(In server garbage collection, it displays OOM, if any, on each garbage collection heap.)
BPMD [-nofuturemodule] [<モジュール名> <メソッド名>] [-md <MethodDesc>] -list -clear <保留中のブレークポイント番号> -clearallBPMD [-nofuturemodule] [<module name> <method name>] [-md <MethodDesc>] -list -clear <pending breakpoint number> -clearall 指定したモジュールの指定したメソッドにブレークポイントを作成します。Creates a breakpoint at the specified method in the specified module.

指定したモジュールとメソッドが読み込まれていない場合、このコマンドは、モジュールが読み込まれ、Just-In-Time (JIT) コンパイルが終了したことを示す通知を受け取るまで待機してから、ブレークポイントを作成します。If the specified module and method have not been loaded, this command waits for a notification that the module was loaded and just-in-time (JIT) compiled before creating a breakpoint.

-list-clear、および -clearall の各オプションを使用して、保留中のブレークポイントのリストを管理できます。You can manage the list of pending breakpoints by using the -list, -clear, and -clearall options:

-list オプションは、保留中のすべてのブレークポイントのリストを生成します。The -list option generates a list of all the pending breakpoints. 保留中のブレークポイントにゼロ以外のモジュール ID がある場合、そのブレークポイントはその特定の読み込まれたモジュール内の関数に対するブレークポイントです。If a pending breakpoint has a non-zero module ID, that breakpoint is specific to a function in that particular loaded module. 保留中のブレークポイントにゼロのモジュール ID がある場合、そのブレークポイントはまだ読み込まれていないモジュールに適用されます。If the pending breakpoint has a zero module ID, that breakpoint applies to modules that have not yet been loaded.

保留中のブレークポイントをリストから削除するには、-clear オプションまたは -clearall オプションを使用します。Use the -clear or -clearall option to remove pending breakpoints from the list.
CLRStack [-a] [-l] [-p] [-n]CLRStack [-a] [-l] [-p] [-n] マネージド コードのみのスタック トレースを提供します。Provides a stack trace of managed code only.

-p オプションは、マネージド関数に渡す引数を表示します。The -p option shows arguments to the managed function.

-l オプションは、フレーム内のローカル変数に関する情報を表示します。The -l option shows information on local variables in a frame. SOS デバッガー拡張はローカル名を取得できないため、ローカル名の出力は <local address> = <value> の形式になります。The SOS Debugging Extension cannot retrieve local names, so the output for local names is in the format <local address> = <value>.

-a (すべて) オプションは、-l-p の組み合わせへのショートカットです。The -a(all) option is a shortcut for -l and -p combined.

-n オプションを指定すると、ソース ファイル名と行番号の表示が無効になります。The -n option disables the display of source file names and line numbers. デバッガーで SYMOPT_LOAD_LINES オプションが指定されている場合、SOS はすべてのマネージド フレームでシンボルを検索し、成功した場合は、対応するソース ファイル名と行番号を表示します。If the debugger has the option SYMOPT_LOAD_LINES specified, SOS will look up the symbols for every managed frame and if successful will display the corresponding source file name and line number. -n (行番号なし) パラメーターを指定すると、この動作を無効にできます。The -n (No line numbers) parameter can be specified to disable this behavior.

x64 ベースおよび IA-64 ベースのプラットフォーム上では、SOS デバッガー拡張で遷移フレームは表示されません。The SOS Debugging Extension does not display transition frames on x64 and IA-64-based platforms.
COMStateCOMState COM アパートメント モデルを使用可能な場合、各スレッドと Context ポインターについてモデルを一覧表示します。Lists the COM apartment model for each thread and a Context pointer, if available.
DumpArray [-start <startIndex>] [-length <長さ>] [-details] [-nofields] <配列オブジェクトのアドレス>DumpArray [-start <startIndex>] [-length <length>] [-details] [-nofields] <array object address>

- または --or-

DA [-start <startIndex>] [-length <長さ>] [-detail] [-nofields] 配列オブジェクトのアドレス>DA [-start <startIndex>] [-length <length>] [-detail] [-nofields] array object address>
配列オブジェクトの要素を調べます。Examines elements of an array object.

-start オプションは、要素の表示を始めるインデックス位置を指定します。The -start option specifies the starting index at which to display elements.

-length オプションは、表示する要素の数を指定します。The -length option specifies how many elements to show.

-details オプションは、DumpObj 形式および DumpVC 形式を使用して要素の詳細を表示します。The -details option displays details of the element using the DumpObj and DumpVC formats.

-nofields オプションは、配列が表示されないようにします。The -nofields option prevents arrays from displaying. -detail オプションを指定した場合にのみこのオプションを使用できます。This option is available only when the -detail option is specified.
DumpAssembly <アセンブリ アドレス>DumpAssembly <assembly address> アセンブリに関する情報を表示します。Displays information about an assembly.

DumpAssembly コマンドは、複数のモジュールが存在する場合はそれらを一覧表示します。The DumpAssembly command lists multiple modules, if they exist.

DumpDomain コマンドを使用するとアセンブリ アドレスを取得できます。You can get an assembly address by using the DumpDomain command.
DumpClass <EEClass アドレス>DumpClass <EEClass address> 型に関連付けられている EEClass 構造体に関する情報を表示します。Displays information about the EEClass structure associated with a type.

DumpClass コマンドを実行すると静的フィールド値は表示されますが、非静的フィールド値は表示されません。The DumpClass command displays static field values but does not display nonstatic field values.

DumpMTDumpObjName2EE、または Token2EE コマンドを使用して、EEClass 構造体のアドレスを取得します。Use the DumpMT, DumpObj, Name2EE, or Token2EE command to get an EEClass structure address.
DumpDomain [<ドメイン アドレス>]DumpDomain [<domain address>] 指定した Assembly オブジェクトのアドレス内に読み込まれている各 AppDomain オブジェクトを列挙します。Enumerates each Assembly object that is loaded within the specified AppDomain object address. パラメーターを指定しないで呼び出すと、DumpDomain コマンドはプロセス内のすべての AppDomain オブジェクトを一覧表示します。When called with no parameters, the DumpDomain command lists all AppDomain objects in a process.
DumpHeap [-stat] [-strings] [-short] [-min <サイズ>] [-max <サイズ>] [-thinlock] [-startAtLowerBound] [-mt <MethodTable アドレス>] [-type <部分型名>][start [end]]DumpHeap [-stat] [-strings] [-short] [-min <size>] [-max <size>] [-thinlock] [-startAtLowerBound] [-mt <MethodTable address>] [-type <partial type name>][start [end]] ガベージ コレクトされたヒープと、オブジェクトの収集統計に関する情報を表示します。Displays information about the garbage-collected heap and collection statistics about objects.

ガベージ コレクター ヒープが過剰に断片化されていることを DumpHeap コマンドが検出すると、警告が表示されます。The DumpHeap command displays a warning if it detects excessive fragmentation in the garbage collector heap.

-stat オプションは、統計的な型の概要のみを出力するよう制限を加えます。The -stat option restricts the output to the statistical type summary.

-strings オプションは、統計的な文字列値の概要のみを出力するよう制限を加えます。The -strings option restricts the output to a statistical string value summary.

-short オプションは、各オブジェクトのアドレスだけに出力を制限します。The -short option limits output to just the address of each object. これにより、コマンドからの出力を別のデバッガー コマンドに簡単にパイプして、オートメーションを実現できます。This lets you easily pipe output from the command to another debugger command for automation.

-min オプションは、バイト単位で指定された size パラメーター未満のオブジェクトを無視します。The -min option ignores objects that are less than the size parameter, specified in bytes.

-max オプションは、バイト単位で指定された size パラメーターを超えるオブジェクトを無視します。The -max option ignores objects that are larger than the size parameter, specified in bytes.

-thinlock オプションは、ThinLocks を報告します。The -thinlock option reports ThinLocks. 詳細については、SyncBlk コマンドを参照してください。For more information, see the SyncBlk command.

-startAtLowerBound オプションは、指定したアドレス範囲の下限からヒープ ウォークを強制的に開始します。The -startAtLowerBound option forces the heap walk to begin at the lower bound of a supplied address range. 計画フェーズの間は、オブジェクトが移動されているのでヒープをウォークできないことがよくあります。During the planning phase, the heap is often not walkable because objects are being moved. このオプションを指定すると、DumpHeap に指定した下限から強制的にウォークを開始させることができます。This option forces DumpHeap to begin its walk at the specified lower bound. このオプションが機能するには、有効なオブジェクトのアドレスを下限として指定する必要があります。You must supply the address of a valid object as the lower bound for this option to work. 無効なオブジェクトのアドレスのメモリを表示して、次のメソッド テーブルを手動で検索できます。You can display memory at the address of a bad object to manually find the next method table. ガベージ コレクションが現在 memcopy を呼び出している場合は、パラメーターとして渡された開始アドレスにサイズを追加することで、次のオブジェクトのアドレスを特定することもできます。If the garbage collection is currently in a call to memcopy, you may also be able to find the address of the next object by adding the size to the start address, which is supplied as a parameter.

-mt オプションは、指定した MethodTable 構造体に対応するオブジェクトのみを一覧表示します。The -mt option lists only those objects that correspond to the specified MethodTable structure.

-type オプションは、指定した文字列に対して部分文字列一致する型名を持つオブジェクトのみを一覧表示します。The -type option lists only those objects whose type name is a substring match of the specified string.

start パラメーターは、指定したアドレスから一覧表示を開始します。The start parameter begins listing from the specified address.

end パラメーターは、指定したアドレスで一覧表示を終了します。The end parameter stops listing at the specified address.
DumpIL<DynamicMethod のマネージド オブジェクト&gt; &amp;#124; <DynamicMethodDesc ポインター&gt; &amp;#124; <MethodDesc ポインター>DumpIL <Managed DynamicMethod object> | <DynamicMethodDesc pointer> | <MethodDesc pointer> マネージド メソッドに関連付けられている Microsoft Intermediate Language (MSIL) を表示します。Displays the Microsoft intermediate language (MSIL) that is associated with a managed method.

動的な MSIL は、アセンブリから読み込まれた MSIL とは異なる形式で出力されます。Note that dynamic MSIL is emitted differently than MSIL that is loaded from an assembly. 動的な MSIL は、メタデータ トークンではなくマネージド オブジェクト配列内のオブジェクトを参照します。Dynamic MSIL refers to objects in a managed object array rather than to metadata tokens.
DumpLog [-addr <addressOfStressLog>] [<Filename>]DumpLog [-addr <addressOfStressLog>] [<Filename>] メモリ内ストレス ログの内容を、指定したファイルに書き込みます。Writes the contents of an in-memory stress log to the specified file. 名前を指定しないと、現在のディレクトリ内に StressLog.txt という名前のファイルが作成されます。If you do not specify a name, this command creates a file called StressLog.txt in the current directory.

メモリ内ストレス ログを使用すると、ロックまたは I/O を使用せずにストレス エラーを診断できます。The in-memory stress log helps you diagnose stress failures without using locks or I/O. ストレス ログを有効にするには、HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework の下に次のレジストリ キーを設定します。To enable the stress log, set the following registry keys under HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework:

(DWORD) StressLog = 1(DWORD) StressLog = 1

(DWORD) LogFacility = 0xffffffff(DWORD) LogFacility = 0xffffffff

(DWORD) StressLogSize = 65536(DWORD) StressLogSize = 65536

省略可能な -addr オプションを使用すると、デフォルト ログ以外のストレス ログを指定できます。The optional -addr option lets you specify a stress log other than the default log.
DumpMD <MethodDesc アドレス>DumpMD <MethodDesc address> 指定したアドレスにある MethodDesc 構造体に関する情報を表示します。Displays information about a MethodDesc structure at the specified address.

IP2MD コマンドを使用すると、マネージド関数から MethodDesc 構造体のアドレスを取得できます。You can use the IP2MD command to get the MethodDesc structure address from a managed function.
DumpMT [-MD] <MethodTable アドレス>DumpMT [-MD] <MethodTable address> 指定したアドレスにあるメソッド テーブルに関する情報を表示します。Displays information about a method table at the specified address. -MD オプションを指定すると、オブジェクトに定義されているすべてのメソッドの一覧が表示されます。Specifying the -MD option displays a list of all methods defined with the object.

各マネージド オブジェクトにメソッド テーブルのポインターが含まれています。Each managed object contains a method table pointer.
DumpMethodSig <sigaddr> <moduleaddr>DumpMethodSig <sigaddr> <moduleaddr> 指定したアドレスにある MethodSig 構造体に関する情報を表示します。Displays information about a MethodSig structure at the specified address.
DumpModule [-mt] <モジュール アドレス>DumpModule [-mt] <Module address> 指定したアドレスにあるモジュールに関する情報を表示します。Displays information about a module at the specified address. -mt オプションは、モジュール内に定義されている型とモジュールから参照される型を表示します。The -mt option displays the types defined in a module and the types referenced by the module

DumpDomain コマンドまたは DumpAssembly コマンドを使用すると、モジュールのアドレスを取得できます。You can use the DumpDomain or DumpAssembly command to retrieve a module's address.
DumpObj [-nofields] <オブジェクトのアドレス>DumpObj [-nofields] <object address>

- または --or-

DO <オブジェクトのアドレス>DO <object address>
指定したアドレスにあるオブジェクトに関する情報を表示します。Displays information about an object at the specified address. DumpObj コマンドを実行すると、フィールド、EEClass 構造体の情報、メソッド テーブル、およびオブジェクトのサイズが表示されます。The DumpObj command displays the fields, the EEClass structure information, the method table, and the size of the object.

DumpStackObjects コマンドを使用すると、オブジェクトのアドレスを取得できます。You can use the DumpStackObjects command to retrieve an object's address.

CLASS 型のフィールドはオブジェクトであるため、この型に対しても DumpObj コマンドを実行できます。Note that you can run the DumpObj command on fields of type CLASS because they are also objects.

-nofields オプションは、オブジェクトのフィールドが表示されないようにします。これは、String のようなオブジェクトに便利です。The -nofields option prevents fields of the object being displayed, it is useful for objects like String.
DumpRuntimeTypesDumpRuntimeTypes ガベージ コレクター ヒープの中にあるランタイムの型オブジェクトを表示し、それらに関連付けられている型名とメソッド テーブルを一覧表示します。Displays the runtime type objects in the garbage collector heap and lists their associated type names and method tables.
DumpStack [-EE] [-n] [top stack [bottom stack]]DumpStack [-EE] [-n] [top stack [bottom stack]] スタック トレースを表示します。Displays a stack trace.

DumpStack コマンドで -EE オプションを指定すると、マネージド関数のみが表示されます。The -EE option causes the DumpStack command to display only managed functions. top パラメーターおよび bottom パラメーターを使用して、x86 プラットフォーム上で表示するスタック フレームを制限します。Use the top and bottom parameters to limit the stack frames displayed on x86 platforms.

-n オプションを指定すると、ソース ファイル名と行番号の表示が無効になります。The -n option disables the display of source file names and line numbers. デバッガーで SYMOPT_LOAD_LINES オプションが指定されている場合、SOS はすべてのマネージド フレームでシンボルを検索し、成功した場合は、対応するソース ファイル名と行番号を表示します。If the debugger has the option SYMOPT_LOAD_LINES specified, SOS will look up the symbols for every managed frame and if successful will display the corresponding source file name and line number. -n (行番号なし) パラメーターを指定すると、この動作を無効にできます。The -n (No line numbers) parameter can be specified to disable this behavior.

x86 および x64 プラットフォーム上では、DumpStack コマンドによって詳細なスタック トレースが作成されます。On x86 and x64 platforms, the DumpStack command creates a verbose stack trace.

IA-64 ベースのプラットフォーム上では、DumpStack コマンドはデバッガーの K コマンドと同様の動作を実行します。On IA-64-based platforms, the DumpStack command mimics the debugger's K command. IA-64 ベースのプラットフォーム上では、top パラメーターと bottom パラメーターは無視されます。The top and bottom parameters are ignored on IA-64-based platforms.
DumpSig <sigaddr> <moduleaddr>DumpSig <sigaddr> <moduleaddr> 指定したアドレスにある Sig 構造体に関する情報を表示します。Displays information about a Sig structure at the specified address.
DumpSigElem <sigaddr> <moduleaddr>DumpSigElem <sigaddr> <moduleaddr> 署名オブジェクトの 1 つの要素を表示します。Displays a single element of a signature object. 通常、個別の署名オブジェクトを調べるには DumpSig を使用する必要があります。In most cases, you should use DumpSig to look at individual signature objects. ただし、署名になんらかの破損がある場合は、DumpSigElem を使用して署名の無効な部分を読み取ることができます。However, if a signature has been corrupted in some way, you can use DumpSigElem to read the valid portions of it.
DumpStackObjects [-verify] [top stack [bottom stack]]DumpStackObjects [-verify] [top stack [bottom stack]]

- または --or-

DSO [-verify] [top stack [bottom stack]]DSO [-verify] [top stack [bottom stack]]
現在のスタックの範囲内で見つかったすべてのマネージド オブジェクトを表示します。Displays all managed objects found within the bounds of the current stack.

-verify オプションは、オブジェクト フィールドの静的でない各 CLASS フィールドを検証します。The -verify option validates each non-static CLASS field of an object field.

K コマンド、CLRStack コマンドなどのスタック トレース コマンドと共に DumpStackObject コマンドを使用して、ローカル変数とパラメーターの値を確認します。Use the DumpStackObject command with stack tracing commands such as the K command and the CLRStack command to determine the values of local variables and parameters.
DumpVC <MethodTable アドレス> <アドレス>DumpVC <MethodTable address> <Address> 指定したアドレスにある値クラスのフィールドに関する情報を表示します。Displays information about the fields of a value class at the specified address.

DumpVC コマンドで MethodTable パラメーターを指定すると、フィールドを正しく解釈できます。The MethodTable parameter allows the DumpVC command to correctly interpret fields. 値クラスでは、最初のフィールドがメソッド テーブルになることはありません。Value classes do not have a method table as their first field.
EEHeap [-gc] [-loader]EEHeap [-gc] [-loader] 内部の CLR データ構造体によって消費されるプロセス メモリに関する情報を表示します。Displays information about process memory consumed by internal CLR data structures.

-gc オプションと -loader オプションは、このコマンドによる出力を、ガベージ コレクターまたはローダーのデータ構造体のいずれかに制限します。The -gc and -loader options limit the output of this command to garbage collector or loader data structures.

ガベージ コレクターの場合、マネージド ヒープの各セグメントの範囲内にある情報が一覧表示されます。The information for the garbage collector lists the ranges of each segment in the managed heap. ポインターが -gc で指定されたセグメント内にある場合、そのポインターはオブジェクト ポインターです。If the pointer falls within a segment range given by -gc, the pointer is an object pointer.
EEStack [-short] [-EE]EEStack [-short] [-EE] プロセス内のすべてのスレッドに対して DumpStack コマンドを実行します。Runs the DumpStack command on all threads in the process.

-EE オプションは、DumpStack コマンドに直接渡されます。The -EE option is passed directly to the DumpStack command. -short パラメーターは、次の種類のスレッドに出力を制限します。The -short parameter limits the output to the following kinds of threads:

ロックを取得しているスレッド。Threads that have taken a lock.

ガベージ コレクションを実行できるように停止されているスレッド。Threads that have been stalled in order to allow a garbage collection.

現在マネージド コードにあるスレッド。Threads that are currently in managed code.
EEVersionEEVersion CLR バージョンを表示します。Displays the CLR version.
EHInfo [<MethodDesc アドレス>] [<コード アドレス>]EHInfo [<MethodDesc address>] [<Code address>] 指定したメソッドの例外処理ブロックを表示します。Displays the exception handling blocks in a specified method. このコマンドを使用すると、句ブロック (try ブロック) およびハンドラー ブロック (catch ブロック) のコード アドレスとオフセットが表示されます。This command displays the code addresses and offsets for the clause block (the try block) and the handler block (the catch block).
FAQFAQ よく寄せられる質問を表示します。Displays frequently asked questions.
FinalizeQueue [-detail] | [-allReady] [-short]FinalizeQueue [-detail] | [-allReady] [-short] 完了の目的で登録されているすべてのオブジェクトを表示します。Displays all objects registered for finalization.

-detail オプションは、クリーンアップする必要があるすべての SyncBlocks およびクリーンアップの実行を待っているすべての RuntimeCallableWrappers (RCW) に関する特別な情報を表示します。The -detail option displays extra information about any SyncBlocks that need to be cleaned up, and any RuntimeCallableWrappers (RCWs) that await cleanup. どちらのデータ構造体も、実行するとファイナライザー スレッドでキャッシュされクリーンアップされます。Both of these data structures are cached and cleaned up by the finalizer thread when it runs.

-allReady オプションは、終了準備完了になっているすべてのオブジェクトを表示します。ガベージ コレクションによって既にそのようにマークされているオブジェクトも、次のガベージ コレクションによってマークされる予定のオブジェクトも同様に扱われます。The -allReady option displays all objects that are ready for finalization, regardless of whether they are already marked by the garbage collection as such, or will be marked by the next garbage collection. "終了準備完了" リストに含まれるオブジェクトは、既にルートがなくなっているファイナライズ可能なオブジェクトです。The objects that are in the "ready for finalization" list are finalizable objects that are no longer rooted. このオプションは、ファイナライズ可能なキューに含まれるすべてのオブジェクトにまだルートがあるかどうかを検証するため、非常に負荷がかかる場合があります。This option can be very expensive, because it verifies whether all the objects in the finalizable queues are still rooted.

-short オプションは、各オブジェクトのアドレスに出力を制限します。The -short option limits the output to the address of each object. -allReady と組み合わせて使用すると、既にルートがなくなり、ファイナライザーが設定されているすべてのオブジェクトが列挙されます。If it is used in conjunction with -allReady, it enumerates all objects that have a finalizer that are no longer rooted. 単独で使用した場合は、ファイナライズ可能な状態で "終了準備完了" キューに含まれるすべてのオブジェクトが一覧表示されます。If it is used independently, it lists all objects in the finalizable and "ready for finalization" queues.
FindAppDomain <オブジェクトのアドレス>FindAppDomain <Object address> 指定したアドレスにあるオブジェクトのアプリケーション ドメインを確認します。Determines the application domain of an object at the specified address.
FindRoots -gen <N> | -gen any |<オブジェクトのアドレス>FindRoots -gen <N> | -gen any |<object address> 指定したジェネレーションの次のコレクションでデバッガーがデバッグ対象を中断するようにします。Causes the debugger to break in the debuggee on the next collection of the specified generation. 中断が発生すると、このオプションの効果はすぐにリセットされます。The effect is reset as soon as the break occurs. 次のコレクションで中断するには、コマンドを再度実行する必要があります。To break on the next collection, you have to reissue the command. このコマンドの <オブジェクトのアドレス> 形式は、-gen または -gen any による中断が発生した後で使用します。The <object address> form of this command is used after the break caused by the -gen or -gen any has occurred. この時点で、デバッグ対象は FindRoots が現在の無効なジェネレーションからオブジェクトのルートを識別するのに適した状態になっています。At that time, the debuggee is in the right state for FindRoots to identify roots for objects from the current condemned generations.
GCHandles [- perdomain]GCHandles [-perdomain] プロセス内のガベージ コレクター ハンドルに関する統計を表示します。Displays statistics about garbage collector handles in the process.

-perdomain オプションは、アプリケーション ドメイン別に統計を再配置します。The -perdomain option arranges the statistics by application domain.

GCHandles コマンドを使用して、ガベージ コレクター ハンドルのリークによって発生するメモリ リークを検索します。Use the GCHandles command to find memory leaks caused by garbage collector handle leaks. たとえば、厳密なガベージ コレクター ハンドルが大きな配列を指しているためコードがその配列を保持したままになっているときに、その配列を解放せずにハンドルを破棄すると、メモリ リークが発生します。For example, a memory leak occurs when code retains a large array because a strong garbage collector handle still points to it, and the handle is discarded without freeing it.
GCHandleLeaksGCHandleLeaks プロセスの強力なガベージ コレクター ハンドルおよび固定されたガベージ コレクター ハンドルへの参照についてメモリ内を検索し、結果を表示します。Searches memory for any references to strong and pinned garbage collector handles in the process and displays the results. ハンドルが見つかった場合、GCHandleLeaks コマンドは参照のアドレスを表示します。If a handle is found, the GCHandleLeaks command displays the address of the reference. メモリ内にハンドルが見つからない場合、このコマンドは通知を表示します。If a handle is not found in memory, this command displays a notification.
GCInfo <MethodDesc アドレス><コード アドレス>GCInfo <MethodDesc address><Code address> レジスタまたはスタックの場所にマネージド オブジェクトが格納された時期を示すデータを表示します。Displays data that indicates when registers or stack locations contain managed objects. ガベージ コレクションを実行する場合は、コレクターはオブジェクトに対する参照の場所を把握しておく必要があります。その結果、新しいオブジェクト ポインターの値を使用して参照を更新できます。If a garbage collection occurs, the collector must know the locations of references to objects so it can update them with new object pointer values.
GCRoot [-nostacks] <オブジェクトのアドレス>GCRoot [-nostacks] <Object address> 指定したアドレスにあるオブジェクトへの参照 (またはルート) に関する情報を表示します。Displays information about references (or roots) to an object at the specified address.

GCRoot コマンドは、マネージド ヒープ全体と、スタック上の他のオブジェクトおよびハンドル内にあるハンドルから成るハンドル テーブルを調べます。The GCRoot command examines the entire managed heap and the handle table for handles within other objects and handles on the stack. 次に、オブジェクトへのポインターについて各スタックを検索し、さらにファイナライザー キューも検索します。Each stack is then searched for pointers to objects, and the finalizer queue is also searched.

このコマンドは、スタック ルートが有効かまたは破棄されているかどうかを確認しません。This command does not determine whether a stack root is valid or is discarded. スタック ルートが使用中であるかどうかを確認するには、CLRStack コマンドと U コマンドを使用して、ローカルまたは引数の値が属するフレームを逆アセンブルします。Use the CLRStack and U commands to disassemble the frame that the local or argument value belongs to in order to determine if the stack root is still in use.

-nostacks オプションは、ガベージ コレクター ハンドルおよび到達可能なオブジェクトのみを検索するよう制限を加えます。The -nostacks option restricts the search to garbage collector handles and freachable objects.
GCWhere <オブジェクトのアドレス>GCWhere <object address> 渡された引数のガベージ コレクション ヒープ内での位置とサイズを表示します。Displays the location and size in the garbage collection heap of the argument passed in. 引数がマネージド ヒープ内にあっても、有効なオブジェクト アドレスではない場合は、サイズは 0 (ゼロ) と表示されます。When the argument lies in the managed heap but is not a valid object address, the size is displayed as 0 (zero).
help [<コマンド>] [faq]help [<command>] [faq] パラメーターを指定しない場合は、使用できるすべてのコマンドを表示します。パラメーターとしてコマンドを指定した場合は、そのコマンドに関する詳細なヘルプを表示します。Displays all available commands when no parameter is specified, or displays detailed help information about the specified command.

faq パラメーターを指定すると、よく寄せられる質問に対する回答が表示されます。The faq parameter displays answers to frequently asked questions.
HeapStat [-inclUnrooted | -iu]HeapStat [-inclUnrooted | -iu] 各ヒープのジェネレーション サイズ、および各ヒープの各ジェネレーションでの合計空き領域を表示します。Displays the generation sizes for each heap and the total free space in each generation on each heap. -inclUnrooted オプションを指定すると、レポートには既にルートがないガベージ コレクション ヒープからのマネージド オブジェクトに関する情報が含まれます。If the -inclUnrooted option is specified, the report includes information about the managed objects from the garbage collection heap that is no longer rooted.
HistClearHistClear Hist コマンドのファミリによって使用されているすべてのリソースを解放します。Releases any resources used by the family of Hist commands.

通常は、HistClear を明示的に呼び出す必要はありません。各 HistInit が前のリソースをクリーンアップします。Generally, you do not have to explicitly call HistClear, because each HistInit cleans up the previous resources.
HistInitHistInit デバッグ対象に保存されているストレス ログから SOS 構造体を初期化します。Initializes the SOS structures from the stress log saved in the debuggee.
HistObj <obj_address>HistObj <obj_address> すべてのストレス ログ再配置レコードを調べて、引数として渡されたアドレスになった可能性のあるガベージ コレクション再配置のチェーンを表示します。Examines all stress log relocation records and displays the chain of garbage collection relocations that may have led to the address passed in as an argument.
HistObjFind <obj_address>HistObjFind <obj_address> 指定したアドレスにあるオブジェクトを参照するすべてのログ エントリを表示します。Displays all the log entries that reference an object at the specified address.
HistRoot <ルート>HistRoot <root> 指定したルートの上位変換と再配置の両方に関係する情報を表示します。Displays information related to both promotions and relocations of the specified root.

ルートの値を使用すると、ガベージ コレクション内でのオブジェクトの移動を追跡できます。The root value can be used to track the movement of an object through the garbage collections.
IP2MD <コード アドレス>IP2MD <Code address> JIT コンパイルされたコード内の指定したアドレスにある MethodDesc 構造体を表示します。Displays the MethodDesc structure at the specified address in code that has been JIT-compiled.
ListNearObj (lno) <obj_address>ListNearObj (lno) <obj_address> 指定したアドレスの前および後にあるオブジェクトを表示します。Displays the objects preceding and following the specified address. このコマンドは、マネージド オブジェクトの開始時に (有効メソッド テーブルに基づいて) 有効であると考えられるガベージ コレクション ヒープ内のアドレス、および引数アドレスの後のオブジェクトを検索します。The command looks for the address in the garbage collection heap that looks like a valid beginning of a managed object (based on a valid method table) and the object following the argument address.
MinidumpMode [0] [1]MinidumpMode [0] [1] ミニダンプを使用するときに安全でないコマンドが実行されるのを防止します。Prevents running unsafe commands when using a minidump.

この機能を無効にするには 0 を渡し、機能を有効にするには 1 を渡します。Pass 0 to disable this feature or 1 to enable this feature. 既定では、MinidumpMode の値は 0 に設定されます。By default, the MinidumpMode value is set to 0.

.dump /m コマンドまたは .dump コマンドで作成されるミニダンプの内容は CLR 固有のデータに制限され、このミニダンプは SOS コマンドのサブセットでのみ正しく実行できます。Minidumps created with the .dump /m command or .dump command have limited CLR-specific data and allow you to run only a subset of SOS commands correctly. 一部のコマンドはメモリの必要領域が割り当てられていないか一部分しか割り当てられていないため、予期しないエラーが発生して失敗することがあります。Some commands may fail with unexpected errors because required areas of memory are not mapped or are only partially mapped. このオプションは、ミニダンプに対して安全でないコマンドが実行されるのを防止します。This option protects you from running unsafe commands against minidumps.
Name2EE <モジュール名> <型またはメソッド名>Name2EE <module name> <type or method name>

- または --or-

Name2EE <モジュール名>!<型またはメソッド名>Name2EE <module name>!<type or method name>
指定したモジュール内の指定した型またはメソッドの MethodTable 構造体および EEClass 構造体を表示します。Displays the MethodTable structure and EEClass structure for the specified type or method in the specified module.

指定したモジュールをプロセスに読み込む必要があります。The specified module must be loaded in the process.

適切な型名を取得するには、Ildasm.exe (IL 逆アセンブラー) を使用してモジュールを参照します。To get the proper type name, browse the module by using the Ildasm.exe (IL Disassembler). また、* を module name パラメーターとして渡すと、読み込まれているすべてのマネージド モジュールを検索できます。You can also pass * as the module name parameter to search all loaded managed modules. モジュール名パラメーターには、mscorlibimage00400000 など、デバッガーのモジュールの名前も指定できます。The module name parameter can also be the debugger's name for a module, such as mscorlib or image00400000.

このコマンドは、Windows のデバッガー構文 <module>!<type> をサポートします。This command supports the Windows debugger syntax of <module>!<type>. 型は、完全修飾する必要があります。The type must be fully qualified.
ObjSize [<オブジェクトのアドレス>] | [-aggregate] [-stat]ObjSize [<Object address>] | [-aggregate] [-stat] 指定したオブジェクトのサイズを表示します。Displays the size of the specified object. パラメーターを何も指定しないで ObjSize コマンドを使用すると、マネージド スレッドで見つかったすべてのオブジェクトのサイズが表示され、プロセス内のすべてのガベージ コレクター ハンドル、およびそれらのハンドルが指すオブジェクトのサイズの合計が表示されます。If you do not specify any parameters, the ObjSize command displays the size of all objects found on managed threads, displays all garbage collector handles in the process, and totals the size of any objects pointed to by those handles. ObjSize コマンドの結果には、親オブジェクトに加え、すべての子オブジェクトのサイズが含まれます。The ObjSize command includes the size of all child objects in addition to the parent.

-aggregate オプションを -stat 引数と組み合わせて使用すると、まだルートがある型の詳細なビューを取得できます。The -aggregate option can be used in conjunction with the -stat argument to get a detailed view of the types that are still rooted. !dumpheap -stat!objsize -aggregate -stat を使用することで、既にルートがなくなっているオブジェクトを判別し、メモリに関するさまざまな問題を診断できます。By using !dumpheap -stat and !objsize -aggregate -stat, you can determine which objects are no longer rooted and diagnose various memory issues.
PrintException [-nested] [-lines] [<例外オブジェクトのアドレス>]PrintException [-nested] [-lines] [<Exception object address>]

- または --or-

PE [-nested] [<例外オブジェクトのアドレス>]PE [-nested] [<Exception object address>]
指定したアドレスにある Exception クラスから派生したすべてのオブジェクトのフィールドが表示および書式設定されます。Displays and formats fields of any object derived from the Exception class at the specified address. アドレスを指定しないで PrintException コマンドを使用すると、現在のスレッドで最後にスローされた例外が表示されます。If you do not specify an address, the PrintException command displays the last exception thrown on the current thread.

-nested オプションは、入れ子になった例外オブジェクトに関する詳細を表示します。The -nested option displays details about nested exception objects.

-lines オプションは、ソース情報を表示します (存在する場合)。The -lines option displays source information, if available.

このコマンドを使用すると、バイナリ配列の _stackTrace フィールドを書式設定して表示できます。You can use this command to format and view the _stackTrace field, which is a binary array.
ProcInfo [-env] [-time] [-mem]ProcInfo [-env] [-time] [-mem] プロセスの環境変数、カーネル CPU 時間、およびメモリ使用率統計を表示します。Displays environment variables for the process, kernel CPU time, and memory usage statistics.
RCWCleanupList <RCWCleanupList アドレス>RCWCleanupList <RCWCleanupList address> 指定したアドレスにあり、クリーンアップを待っているランタイム呼び出し可能ラッパーの一覧を表示します。Displays the list of runtime callable wrappers at the specified address that are awaiting cleanup.
SaveModule <ベース アドレス> <ファイル名>SaveModule <Base address> <Filename> メモリ内の指定したアドレスに読み込まれているイメージを、指定したファイルに書き込みます。Writes an image, which is loaded in memory at the specified address, to the specified file.
SOSFlushSOSFlush 内部 SOS キャッシュをフラッシュします。Flushes an internal SOS cache.
StopOnException [-derived] [-create | -create2] <例外> <擬似レジスタ番号>StopOnException [-derived] [-create | -create2] <Exception> <Pseudo-register number> 指定した例外がスローされたときにデバッガーを停止しますが、それ以外の例外がスローされたときは実行を続行します。Causes the debugger to stop when the specified exception is thrown, but to continue running when other exceptions are thrown.

-derived オプションは、指定した例外、および指定した例外から派生したすべての例外をキャッチします。The -derived option catches the specified exception and every exception that derives from the specified exception.
SyncBlk [-all | <syncblk 番号>]SyncBlk [-all | <syncblk number>] 指定した SyncBlock 構造体またはすべての SyncBlock 構造体を表示します。Displays the specified SyncBlock structure or all SyncBlock structures. SyncBlk コマンドに引数を渡さない場合は、スレッドが所有しているオブジェクトに対応する SyncBlock 構造体が表示されます。If you do not pass any arguments, the SyncBlk command displays the SyncBlock structure corresponding to objects that are owned by a thread.

SyncBlock 構造体は、オブジェクトによっては作成する必要のないこともある追加情報のコンテナーです。A SyncBlock structure is a container for extra information that does not need to be created for every object. この構造体は、COM 相互運用機能データ、ハッシュ コード、およびスレッド セーフ操作用のロック情報を保持できます。It can hold COM interop data, hash codes, and locking information for thread-safe operations.
ThreadPoolThreadPool キュー内の作業要求の数、完了ポート スレッドの数、タイマーの数を含め、マネージド スレッド プールに関する情報を表示します。Displays information about the managed thread pool, including the number of work requests in the queue, the number of completion port threads, and the number of timers.
Token2EE <モジュール名> <トークン>Token2EE <module name> <token> 指定したモジュール内の指定したメタデータ トークンを MethodTable 構造体または MethodDesc 構造体に変換します。Turns the specified metadata token in the specified module into a MethodTable structure or MethodDesc structure.

module name パラメーターに * を渡すと、読み込まれているすべてのマネージド モジュール内にあるそのトークンの割り当て先を検索できます。You can pass * for the module name parameter to find what that token maps to in every loaded managed module. また、デバッガーの mscorlibimage00400000 などのモジュール名を渡すこともできます。You can also pass the debugger's name for a module, such as mscorlib or image00400000.
Threads [-live] [-special]Threads [-live] [-special] プロセス内のすべてのマネージド スレッドを表示します。Displays all managed threads in the process.

Threads コマンドを使用すると、デバッガーの短縮 ID、CLR のスレッド ID、およびオペレーティング システムのスレッド ID が表示されます。The Threads command displays the debugger shorthand ID, the CLR thread ID, and the operating system thread ID. さらに、Threads コマンドでは、スレッドを実行しているアプリケーション ドメインを示すドメイン列、COM アパートメント モードが表示される APT 列、およびスレッド内の最後にスローされた例外が表示される例外列が表示されます。Additionally, the Threads command displays a Domain column that indicates the application domain in which a thread is executing, an APT column that displays the COM apartment mode, and an Exception column that displays the last exception thrown in the thread.

-live オプションは、ライブ スレッドに関連付けられているスレッドを表示します。The -live option displays threads associated with a live thread.

-special オプションは、CLR で作成されたすべての特殊なスレッドを表示します。The -special option displays all special threads created by the CLR. 特殊なスレッドには、同時実行ガベージ コレクションおよびサーバー ガベージ コレクションのガベージ コレクション スレッド、デバッガー ヘルパー スレッド、ファイナライザー スレッド、AppDomain アンロード スレッド、およびスレッド プール タイマー スレッドがあります。Special threads include garbage collection threads (in concurrent and server garbage collection), debugger helper threads, finalizer threads, AppDomain unload threads, and thread pool timer threads.
ThreadState < 状態値フィールド >ThreadState < State value field > スレッドの状態を表示します。Displays the state of the thread. value パラメーターは、Threads レポート出力の State フィールドの値です。The value parameter is the value of the State field in the Threads report output.

例:Example:

0:003> !Threads ThreadCount: 2 UnstartedThread: 0 BackgroundThread: 1 PendingThread: 0 DeadThread: 0 Hosted Runtime: no PreEmptive GC Alloc Lock ID OSID ThreadOBJ State GC Context Domain Count APT Exception 0 1 250 0019b068 a020 Disabled 02349668:02349fe8 0015def0 0 MTA 2 2 944 001a6020 b220 Enabled 00000000:00000000 0015def0 0 MTA (Finalizer) 0:003> !ThreadState b220 Legal to Join Background CLR Owns CoInitialized In Multi Threaded Apartment
TraverseHeap [-xml] <ファイル名>TraverseHeap [-xml] <filename> ヒープ情報を、CLR プロファイラーが処理できる形式で指定したファイルに書き込みます。Writes heap information to the specified file in a format understood by the CLR profiler. TraverseHeap コマンドの -xml オプションを指定すると、ファイルが XML 形式として設定されます。The -xml option causes the TraverseHeap command to format the file as XML.

CLR プロファイラーは Microsoft ダウンロード センターからダウンロードできます。You can download the CLR Profiler from the Microsoft Download Center.
U [-gcinfo] [-ehinfo] [-n] <MethodDesc アドレス> | <コード アドレス>U [-gcinfo] [-ehinfo] [-n] <MethodDesc address> | <Code address> メソッドの MethodDesc 構造体ポインターまたはメソッド本体のコード アドレスで指定したマネージド メソッドの注釈付き逆アセンブリを表示します。Displays an annotated disassembly of a managed method specified either by a MethodDesc structure pointer for the method or by a code address within the method body. U コマンドを使用すると、開始から終了までのすべてのメソッドが、メタデータ トークンを名前に変換する注釈付きで表示されます。The U command displays the entire method from start to finish, with annotations that convert metadata tokens to names.

U コマンドの -gcinfo オプションを指定すると、メソッドの GCInfo 構造体が表示されます。The -gcinfo option causes the U command to display the GCInfo structure for the method.

-ehinfo オプションは、メソッドの例外情報を表示します。The -ehinfo option displays exception information for the method. この情報は EHInfo コマンドでも取得できます。You can also obtain this information with the EHInfo command.

-n オプションを指定すると、ソース ファイル名と行番号の表示が無効になります。The -n option disables the display of source file names and line numbers. デバッガーで SYMOPT_LOAD_LINES オプションが指定されている場合、SOS はすべてのマネージド フレームでシンボルを検索し、成功した場合は、対応するソース ファイル名と行番号を表示します。If the debugger has the option SYMOPT_LOAD_LINES specified, SOS looks up the symbols for every managed frame and, if successful, displays the corresponding source file name and line number. -n オプションを指定すると、この動作を無効にできます。You can specify the -n option to disable this behavior.
VerifyHeapVerifyHeap ガベージ コレクター ヒープの破損の兆候をチェックし、検出されたすべてのエラーを表示します。Checks the garbage collector heap for signs of corruption and displays any errors found.

ヒープが正しく構築されていない場合、プラットフォームが呼び出しを実行したことが原因で、ヒープが破損する可能性があります。Heap corruptions can be caused by platform invoke calls that are constructed incorrectly.
VerifyObj <オブジェクトのアドレス>VerifyObj <object address> 引数として渡されたオブジェクトで破損の兆候を調べます。Checks the object that is passed as an argument for signs of corruption.
VMMapVMMap 仮想アドレス空間を走査し、各領域に適用されている保護方法の種類を表示します。Traverses the virtual address space and displays the type of protection applied to each region.
VMStatVMStat 仮想アドレス空間の概要を、そのメモリに適用されている保護方法の種類 (保護なし、予約済み、コミット、プライベート、割り当て済み、イメージ) の順に表示します。Provides a summary view of the virtual address space, ordered by each type of protection applied to that memory (free, reserved, committed, private, mapped, image). AVERAGE 列に BLK COUNT 列を掛けた結果が TOTAL 列に表示されます。The TOTAL column displays the result of the AVERAGE column multiplied by the BLK COUNT column.

コメントRemarks

SOS デバッガー拡張を使用すると、CLR 内部で実行しているコードに関する情報を表示できます。The SOS Debugging Extension lets you view information about code that is running inside the CLR. たとえば、SOS デバッガー拡張を使用して、マネージド ヒープに関する情報の表示、ヒープ破損の検索、ランタイムが使用している内部データ型の表示、およびランタイム内部で実行しているすべてのマネージド コードに関する情報の表示を行うことができます。For example, you can use the SOS Debugging Extension to display information about the managed heap, look for heap corruptions, display internal data types used by the runtime, and view information about all managed code running inside the runtime.

Visual Studio で SOS デバッガー拡張を使用するには、Windows ドライバー開発キット (WDK) をインストールします。To use the SOS Debugging Extension in Visual Studio, install the Windows Driver Kit (WDK). Visual Studio の統合デバッグ環境については、「Debugging Environments (デバッグ環境)」を参照してください。For information about the integrated debugging environment in Visual Studio, see Debugging Environments.

SOS デバッガー拡張は、WinDbg.exe デバッガーに読み込み、WinDbg.exe でコマンドを実行することで使用することもできます。You can also use the SOS Debugging Extension by loading it into the WinDbg.exe debugger and executing commands within WinDbg.exe.

WinDbg.exe デバッガーに SOS デバッガー拡張を読み込むには、ツールで次のコマンドを実行します。To load the SOS Debugging Extension into the WinDbg.exe debugger, run the following command in the tool:

.loadby sos clr

WinDbg.exe と Visual Studio は、現在使用している Mscorwks.dll のバージョンに対応する SOS.dll のバージョンを使用します。WinDbg.exe and Visual Studio use a version of SOS.dll that corresponds to the version of Mscorwks.dll currently in use. 既定では、Mscorwks.dll の現在のバージョンに一致する SOS.dll のバージョンを使用することになります。By default, you should use the version of SOS.dll that matches the current version of Mscorwks.dll.

別のコンピューターで作成されたダンプ ファイルを使用するには、そのインストールに付属していた Mscorwks.dll ファイルが現在のコンピューターのシンボル パスにあることを確認し、対応するバージョンの SOS.dll を読み込みます。To use a dump file created on another computer, make sure that the Mscorwks.dll file that came with that installation is in your symbol path, and load the corresponding version of SOS.dll.

特定のバージョンの SOS.dll を読み込むには、Windows デバッガーに次のコマンドを入力します。To load a specific version of SOS.dll, type the following command into the Windows Debugger:

.load <full path to sos.dll>

使用例Examples

次のコマンドは、アドレス 00ad28d0 にある配列の内容を表示します。The following command displays the contents of an array at the address 00ad28d0. 2 番目の要素およびそれ以降にある合計 5 つの要素が表示されます。The display starts from the second element and continues for five elements.

!dumparray -start 2 -length 5 -detail 00ad28d0

次のコマンドは、アドレス 1ca248 にあるアセンブリの内容を表示します。The following command displays the contents of an assembly at the address 1ca248.

!dumpassembly 1ca248

次のコマンドは、ガベージ コレクター ヒープに関する情報を表示します。The following command displays information about the garbage collector heap.

!dumpheap

次のコマンドは、メモリ内ストレス ログの内容を、現在のディレクトリ内にある StressLog.txt という名前の (既定の) ファイルに書き込みます。The following command writes the contents of the in-memory stress log to a (default) file called StressLog.txt in the current directory.

!DumpLog

次のコマンドは、アドレス MethodDesc にある 902f40 構造体を表示します。The following command displays the MethodDesc structure at the address 902f40.

!dumpmd 902f40

次のコマンドは、アドレス 1caa50 にあるモジュールに関する情報を表示します。The following command displays information about a module at the address 1caa50.

!dumpmodule 1caa50

次のコマンドは、アドレス a79d40 にあるオブジェクトに関する情報を表示します。The following command displays information about an object at the address a79d40.

!DumpObj a79d40

次のコマンドは、アドレス 00a79d9c にあるメソッド テーブルを使用して、アドレス 0090320c にある値クラスのフィールドを表示します。The following command displays the fields of a value class at the address 00a79d9c using the method table at the address 0090320c.

!DumpVC 0090320c 00a79d9c

次のコマンドは、ガベージ コレクターによって使用されるプロセス メモリを表示します。The following command displays the process memory used by the garbage collector.

!eeheap -gc

次のコマンドは、完了の目的でスケジュールされているすべてのオブジェクトを表示します。The following command displays all objects scheduled for finalization.

!finalizequeue

次のコマンドは、アドレス 00a79d98 にあるオブジェクトのアプリケーション ドメインを確認します。The following command determines the application domain of an object at the address 00a79d98.

!findappdomain 00a79d98

次のコマンドは、現在のプロセス内のすべてのガベージ コレクター ハンドルを表示します。The following command displays all garbage collector handles in the current process.

!gcinfo 5b68dbb8

次のコマンドは、MethodTable モジュールにある EEClass クラスの Main メソッドの MainClass 構造体および unittest.exe 構造体を表示します。The following command displays the MethodTable and EEClass structures for the Main method in the class MainClass in the module unittest.exe.

!name2ee unittest.exe MainClass.Main

次のコマンドは、02000003 モジュールのアドレス unittest.exe にあるメタデータ トークンに関する情報を表示します。The following command displays information about the metadata token at the address 02000003 in the module unittest.exe.

!token2ee unittest.exe 02000003

関連項目See also