Omezení rizik: Rámečky PNG v objektech ikon

Počínaje rozhraním .NET Framework 4.6 Icon.ToBitmap metoda úspěšně převádí ikony s rámečky PNG na Bitmap objekty.

V aplikacích, které cílí na rozhraní .NET Framework 4.5.2 a starší verze, metoda Icon.ToBitmap vyvolá ArgumentOutOfRangeException výjimku, pokud objekt Icon má rámce PNG.

Dopad

Tato změna má vliv na aplikace, které jsou rekompilovány s cílem cílit na rozhraní .NET Framework 4.6 a implementují speciální zpracování pro vyvolání ArgumentOutOfRangeException, která je vyvolána při tom, když má objekt Icon rámce PNG. Při spuštění v rozhraní .NET Framework 4.6 je převod úspěšný, ArgumentOutOfRangeException již není vyvolána, a proto obslužná rutina výjimky již není vyvolána.

Zmírnění

Pokud je toto chování nežádoucí, můžete předchozí chování zachovat přidáním následujícího prvku do <části runtime> souboru app.config:

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

Pokud soubor app.config již obsahuje AppContextSwitchOverrides prvek, měla by být nová hodnota sloučena s atributem value takto:

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

Viz také