修正: インストールされている.NET Framework 3.5 Service Pack 1 を持つコンピューターで例外がスロー アプリケーションが汎用的なインタ フェースのパラメーター ヒント オブジェクトの GetOptionalCustomModifiers メソッドまたは GetRequiredCustomModifiers メソッドを呼び出すと、

適用対象: .NET Framework 3.5 Service Pack 1

現象


ジェネリック インターフェイスのパラメーター ヒントオブジェクトのGetOptionalCustomModifiersメソッドまたはGetRequiredCustomModifiersメソッドを呼び出しているアプリケーションがあります。Microsoft.NET Framework 3.5 Service Pack 1 (SP1) がインストールされているコンピューターでこのアプリケーションを実行して例外がスローされると、次のようなエラー メッセージが表示されます。
Mscorlib.dll に型 'System.ExecutionEngineException' のハンドルされない例外が発生しました。
さらに、イベント ID 1023 がアプリケーション ログに記録されます。このイベントのような次: イベント ID 1000 がアプリケーション ログにも記録されます。このイベントは、次のようになります。

原因


この問題は、.NET Framework 3.5 sp1 では、問題が発生したために発生します。

解決策


修正プログラムの情報

サポートされている修正プログラムは、マイクロソフトから入手可能です。ただし、この修正プログラムは、ここで説明する問題のみを修正することを目的としたものです。この問題が発生しているシステムにのみ適用してください。この修正プログラムは、今後さらにテストを行う場合があります。したがって、この問題の影響が深刻でない場合は、この修正プログラムが含まれる次のソフトウェア更新プログラムがリリースされるまで待つことをお勧めします。

この修正プログラムを MSDN コード ギャラリーからダウンロードするには、次のマイクロソフト Web サイトを参照してください。


注: MSDN コード ギャラリーの修正プログラムは利用可能な言語を表示します。自分の言語が一覧に表示されない場合は、その言語用のコード ギャラリー リソース ページが使用できないためです。


注: さらなる問題が発生した場合、またはトラブルシューティングが必要な場合には、別のサービス リクエストの作成が必要な場合があります。この修正プログラムの対象外の追加の質問および問題については、通常のサポート料金が適用されます。マイクロソフト カスタマー サービス サポートの電話番号一覧または別のサービス リクエストの作成については、次のマイクロソフト Web サイトを参照してください。

注: Windows Server 2008 または Windows Vista Service Pack 1 に、この修正プログラムが必要な場合は、修正プログラム 957542 を取得します。修正プログラム 957542 は、この問題を解決しては、これらのオペレーティング システムの使用。の詳細については、マイクロソフト サポート技術情報の記事を表示するのには次の資料番号をクリックします:

957542を修正します.NET Framework 3.5 Service Pack 1 を実行しているコンピューターで、JIT コンパイラと、ネイティブ イメージ ジェネレーター (Ngen.exe) Mscorjit.dll ファイルを使用することがあります間違ったコードが生成。

必要条件

.NET Framework 3.5 SP1 がこの修正プログラムを適用するためにインストールする必要があります。

再起動の必要性

更新されるファイルのいずれかを使用している場合は、コンピューターを再起動する必要があります。

修正プログラムの置き換えに関する情報

この修正プログラムによって他の修正プログラムが置き換わることはありません。

ファイル情報

修正プログラム (英語版) のファイル属性は次表のとおりです。ただし、これより新しい修正プログラムがリリースされている可能性もあります。各ファイルの日付および時刻は、世界協定時刻 (UTC) で示されています。ファイル情報に表示される時刻は、ローカル時刻に変換されています。UTC とローカル時刻との時差を確認するには、コントロール パネルの [日付と時刻] の [タイム ゾーン] タブを使用してください。
Windows 2000、Windows XP および Windows Server 2003 では、x86 バージョン
ファイル名ファイル バージョンファイル サイズ日付時刻
Mscordacwks.dll2.0.50727.3068992,26416-Sep-200813:13
Mscorlib.dll2.0.50727.30684,546,56016-Sep-200813:13
Mscorwks.dll2.0.50727.30685,815,80816-Sep-200813:13
Windows 2000、Windows XP および Windows Server 2003 では、x64 バージョン
ファイル名ファイル バージョンファイル サイズ日付時刻プラットフォーム
Mscordacwks.dll2.0.50727.3068992,26416-Sep-200813:13x86
Mscorlib.dll2.0.50727.30684,546,56016-Sep-200813:13x86
Mscorwks.dll2.0.50727.30685,815,80816-Sep-200813:13x86
Mscordacwks.dll2.0.50727.30681,767,94416-Sep-200810:33x64
Mscorlib.dll2.0.50727.30684,562,94416-Sep-200810:33x64
Mscorwks.dll2.0.50727.306810,079,74416-Sep-200810:33x64
Windows 2000、Windows XP および Windows Server 2003 ia-64 バージョン
ファイル名ファイル バージョンファイル サイズ日付時刻プラットフォーム
Mscordacwks.dll2.0.50727.3068992,26416-Sep-200813:13x86
Mscorlib.dll2.0.50727.30684,546,56016-Sep-200813:13x86
Mscorwks.dll2.0.50727.30685,815,80816-Sep-200813:13x86
Mscordacwks.dll2.0.50727.30683,087,88016-Sep-200810:44IA-64
Mscorlib.dll2.0.50727.30684,005,88816-Sep-200810:44IA-64
Mscorwks.dll2.0.50727.306820,153,85616-Sep-200810:44IA-64

状況


マイクロソフトは、この問題を「対象製品」セクションに記載されているマイクロソフト製品の問題として認識しています。

詳細


問題を再現する手順を実行します。

この問題を再現するには Microsoft Visual C# プロジェクトを作成して、.NET Framework 3.5 SP1 がインストールされているコンピューターで次のコードを実行します。
using System;namespace GetCustomModifiersBug
{
public interface IGenericInterface<T1, T2>
{
void GenericIfcMethod<T3>(T3 t3);
}
class Program
{
static void Main()
{

Type ifc = typeof(IGenericInterface<int, int>);
// Either of the following lines on their own will cause the problem
ifc.GetMethod("GenericIfcMethod").GetParameters()[0].GetOptionalCustomModifiers();
ifc.GetMethod("GenericIfcMethod").GetParameters()[0].GetRequiredCustomModifiers();

}
}
}

関連情報


ソフトウェア更新プログラムの用語の詳細については、次の文書番号をクリックして、マイクロソフト サポート技術情報の資料を参照してください。
824684マイクロソフトのソフトウェア更新プログラムを記述するために使用される一般的な用語説明