次の方法で共有


StackFrame.GetILOffset メソッド

実行中のメソッドの MSIL (Microsoft Intermediate Language) コードの先頭からのオフセットを取得します。このオフセットはジャスト イン タイム (JIT: Just-In-Time) コンパイラがデバッグするコードを生成しているかどうかに依存する近似値になることがあります。このデバッグ情報の生成は、 DebuggableAttribute プロパティにより制御されます。

Public Overridable Function GetILOffset() As Integer
[C#]
public virtual int GetILOffset();
[C++]
public: virtual int GetILOffset();
[JScript]
public function GetILOffset() : int;

戻り値

実行中のメソッドのための MSIL コードの先頭からのオフセット。

使用例

[Visual Basic, C#, C++] GetILOffset メソッドを使用する方法を次のコード例に示します。

 
' Display the stack frame properties.
Dim sf As StackFrame = st.GetFrame(i)
Console.WriteLine(" File: {0}", sf.GetFileName())
Console.WriteLine(" Line Number: {0}", _
   sf.GetFileLineNumber())
' The column number defaults to zero when not initialized.
Console.WriteLine(" Column Number: {0}", _
   sf.GetFileColumnNumber())
If sf.GetILOffset <> StackFrame.OFFSET_UNKNOWN
   Console.WriteLine(" Intermediate Language Offset: {0}", _
       sf.GetILOffset())
End If
If sf.GetNativeOffset <> StackFrame.OFFSET_UNKNOWN
  Console.WriteLine(" Native Offset: {0}", _
      sf.GetNativeOffset())
End If

[C#] 
// Display the stack frame properties.
StackFrame sf = st.GetFrame(i);
Console.WriteLine(" File: {0}", sf.GetFileName());
Console.WriteLine(" Line Number: {0}", 
   sf.GetFileLineNumber());
// Note that the column number defaults to zero
// when not initialized.
Console.WriteLine(" Column Number: {0}", 
   sf.GetFileColumnNumber());
if (sf.GetILOffset() != StackFrame.OFFSET_UNKNOWN)
{
   Console.WriteLine(" Intermediate Language Offset: {0}", 
      sf.GetILOffset());
}
if (sf.GetNativeOffset() != StackFrame.OFFSET_UNKNOWN)
{
   Console.WriteLine(" Native Offset: {0}", 
      sf.GetNativeOffset());
}

[C++] 
// Display the stack frame properties.
StackFrame *sf = st->GetFrame(i);
Console::WriteLine(S" File: {0}", sf->GetFileName());
Console::WriteLine(S" Line Number: {0}", 
   sf->GetFileLineNumber().ToString());
// Note that the column number defaults to zero
// when not initialized.
Console::WriteLine(S" Column Number: {0}", 
   sf->GetFileColumnNumber().ToString());
Console::WriteLine(S" Intermediate Language Offset: {0}", 
   sf->GetILOffset().ToString());
Console::WriteLine(S" Native Offset: {0}", 
   sf->GetNativeOffset().ToString());

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ

参照

StackFrame クラス | StackFrame メンバ | System.Diagnostics 名前空間 | DebuggableAttribute