この記事が適用される製品とオペレーティング システムを参照してください。 この記事では、Microsoft .NET Framework 4.6.1 および Windows 8.1、Windows RT 8.1、Windows Server 2012 R2 の .NET Framework 4.6 で使用できる修正プログラム ロールアップ 3139550 について説明します。 この修正プログラム ロールアップの修正プログラムの詳細については、「この修正プログラム ロールアップで修正される問題」セクションを参照してください。
解決方法
ダウンロード情報
KB3139550 に対応する修正プログラムは、KB3139550 に含まれているすべての修正プログラムを含む .NET Framework の最新の更新プログラムに置き換えられます。 最新の更新プログラムをインストール.NET Framework。
マイクロソフトのサポート ファイルをダウンロードする方法の詳細については、以下のサポート技術情報を参照してください。
119591 Microsoft がウイルスをスキャンしたオンライン サービスから Microsoft サポート ファイルを取得する方法。 配布ファイルはセキュリティで保護されたサーバー上に置かれており、権限のない第三者が無断でファイルを変更できないようになっています。 配布ファイルはセキュリティで保護されたサーバー上に置かれており、権限のない第三者が無断でファイルを変更できないようになっています。
詳細情報
必要条件
この修正プログラムを適用するには、.NET Framework 4.6.1 または .NET Framework 4.6 がインストールされている必要があります。
再起動の必要性
影響を受けるファイルが使用されている場合は、この修正プログラムを適用した後、コンピューターを再起動する必要があります。 この修正プログラムを適用する前.NET Frameworkすべてのアプリケーションを閉じてお勧めします。
修正プログラムの置き換えに関する情報
この修正プログラム パッケージでは、以前にリリースされた修正プログラム パッケージは置き換えされません。
この修正プログラム ロールアップで修正される問題
問題 1
WPF アプリケーションが TreeView のコンテキストの外部で TreeViewItem を使用すると、アプリケーションは、スタック トレースが次のように開始される InvalidCastException 例外を発生する可能性があります。
システム。Windows。Controls.VirtualizingStackPanel.FindScrollOffset(Visual v) 注意 この例外は、TreeViewItem が、TreeViewItem またはその子孫のスクロール オフセットを検索しようとする仮想化リスト コントロール (ListBox、DataGrid、ListView コントロールなど) にある場合に発生します。 たとえば、この例外は、DataTemplate のルートとして TreeViewItem を宣言し、DataTemplate が DataGrid 列の CellTemplate として使用される場合に発生します。問題 2
System.Web.Caching と System.Runtime.Caching の両方が、キャッシュ項目で使用されるメモリではなく、AppDomain 全体で使用されるメモリのサイズを報告します。
これは、Timer 実装の変更.NET Framework 4.5 からの回帰です。 間違ったサイズを報告するだけでなく、キャッシュによって参照される追加のオブジェクトが Gen2 GC の待機時間に大きく影響する可能性があります。 ASP.NET ホスティング シナリオでは、アプリ ドメインがリサイクルされた場合、キャッシュによってすべてのアプリ ドメインのすべてのキャッシュのサイズが誤って計算されます ("Cache % Process Memory Limit Used" ASP.NET パフォーマンス カウンターを通じて報告されます)。 この修正では、キャッシュから他のアプリ ドメイン オブジェクトへの意図しない参照が削除され、正しいサイズが報告されます。 この修正プログラムには、Server GC を使用しているマルチコア コンピューターでの System.Runtime.Caching の待機時間を改善するための変更も含まれています。 さらに、この修正プログラムを適用すると、アプリ ドメインのリサイクル シナリオのすべてのキャッシュのサイズが正しく計算されます。問題 3
タッチ移動のマウスのプロモーションに依存する Windows Presentation Foundation (WPF) アプリケーションを使用してタッチ ユーザーの操作を処理する場合 (タッチ イベントを直接使用する代わりに)、マウスの昇格された移動の量が異常に少ない場合があります。
以前は、タッチの WPF 調整されたマウスのプロモーションは、大量のタッチ移動がディスパッチャーに大きな影響を受けずに移動しました。 .NET Framework 4.6.1 では、処理されるタッチ移動の数を調整するための修正プログラムが導入されました。 この変更後、マウスプロモーションの調整によって、生成されたマウス移動の数がさらに減少しました。 タッチ移動イベントと昇格されたマウス移動イベントの間にほぼ 1 対 1 の対応が必要な、マウスプロモーションの調整が削除されました。問題 4
アプリケーション 4.6 を対象とする WPF アプリケーションを.NET Frameworkします。 DispatcherOperation を使用して WPF ディスパッチャーによって呼び出される任意のメソッドで CurrentThread.CurrentCulture または CurrentThread.CurrentUICulture の値を設定します。 たとえば、UI イベント ハンドラーまたは MainWindow コンストラクターでこの値を設定します。 この状況では、CurrentCulture と CurrentUICulture の値は、メソッドの最後にあるそれぞれの前の値にリセットされます。 アプリケーションが MainWindow コンストラクターまたは Button Click ハンドラーで CurrentUICulture を設定した場合、その設定はシステム UI カルチャに戻されます。
この修正により、WPF アプリケーションのメソッドで設定されている CurrentThread.CurrentCulture/CurrentUICulture の値が、.NET Framework 4.6 以前と同じように保持されます。問題 5
.NET Framework 4.6 では、新しいフラグ TaskContinuationOptions.RunContinuationsAsynchronously がタスク ライブラリに追加されます。 ただし、このフラグを Task.WhenAll、Task.WhenAny、または Task.Unwrap と共に使用する場合、フラグは有効ではありません。 特定のデッドロック状態を回避するために フラグが導入されました。 この修正により、すべての種類のタスク継続が新しいフラグを尊重します。
問題 6
.NET Framework 4.6 では、AppContext メソッドのスレッドの安全性が正しく実装されないバグが AppContext に発生します。 AppContext は、大きな変更を減らすインフラストラクチャの一部です。 AppContext を使用してフラグを設定および取得し、そのデータに基づいてアプリケーションで決定を行います。
この修正により、スイッチ値の設定と取得に関連する AppContext 上のメソッドに対する正しいスレッド セーフティが有効になります。問題 7
割り当てと存続パターンを持つエッジ ケースが発生し、マネージド ヒープに新しいセグメントが必要な場合、ガベージ コレクターは、必要以上に小さいコミット サイズを計算できます。 これにより、ガベージ コレクターがコミットされていないメモリへの書き込みを試み中のため、圧縮フェーズ中にアクセス違反が発生します。
この修正では、サイズが正しく計算されます。問題 8
特定のメソッドのネイティブ コードを作成すると、.NET Framework NGEN プロセスで予期しないクラッシュが発生する可能性があります。
問題 9
レジスタ上の 16 ビット符号なし整数を比較する誤った命令が生成されます。 入力値の MSB 値が異なる場合や、生成される比較命令でレジスタ オペランドを使用すると、正しくない結果が生成されます。
この修正により、正しい手順が生成されます。適用対象
この資料は、以下を対象としています。
-
Microsoft .NET Framework 4.6.1
-
Microsoft .NET Framework 4.6 で使用する場合:
-
Windows 8.1
-
Windows RT 8.1
-
Windows Server 2012 R2 Datacenter
-
Windows Server 2012 R2 Essentials
-
Windows Server 2012 R2 for Embedded Systems
-
Windows Server 2012 R2 Foundation
-
Windows Server 2012 R2 Standard
-