次の方法で共有


軽減策: アイコン オブジェクト内の PNG フレーム

.NET Framework 4.6 以降、 Icon.ToBitmap メソッドは PNG フレームを含むアイコンを Bitmap オブジェクトに正常に変換します。

.NET Framework 4.5.2 以前のバージョンを対象とするアプリでは、Icon.ToBitmap オブジェクトに PNG フレームがある場合、ArgumentOutOfRangeException メソッドはIcon例外をスローします。

インパクト

この変更は、.NET Framework 4.6 を対象として再コンパイルされ、ArgumentOutOfRangeException オブジェクトに PNG フレームがある場合にスローされるIconの特別な処理を実装するアプリに影響します。 .NET Framework 4.6 で実行すると、変換が成功し、 ArgumentOutOfRangeException がスローされなくなり、例外ハンドラーが呼び出されなくなります。

緩和策

この動作が望ましくない場合は、app.config ファイルの <runtime> セクションに次の要素を追加することで、前の動作を保持できます。

<AppContextSwitchOverrides
      value="Switch.System.Drawing.DontSupportPngFramesInIcons=true" />  

app.config ファイルに既に AppContextSwitchOverrides 要素が含まれている場合は、次のように新しい値を value 属性とマージする必要があります。

<AppContextSwitchOverrides
      value="Switch.System.Drawing.DontSupportPngFramesInIcons=true;previous key=previous-value" />

こちらも参照ください