Compartir a través de


Mitigación: Marcos PNG en objetos de iconos

A partir de .NET Framework 4.6, el Icon.ToBitmap método convierte correctamente los iconos con marcos PNG en Bitmap objetos .

En las aplicaciones que tienen como destino .NET Framework 4.5.2 y versiones anteriores, el Icon.ToBitmap método produce una ArgumentOutOfRangeException excepción si el Icon objeto tiene marcos PNG.

Impacto

Este cambio afecta a las aplicaciones que se vuelven a compilar para dirigirse a .NET Framework 4.6 y que implementan una gestión especial para la ArgumentOutOfRangeException que se lanza cuando un objeto Icon contiene fotogramas PNG. Cuando se ejecuta en .NET Framework 4.6, la conversión se realiza correctamente, ArgumentOutOfRangeException ya no se lanza y, por tanto, el controlador de excepciones ya no se invoca.

Mitigación

Si este comportamiento no es deseable, puede conservar el comportamiento anterior agregando el siguiente elemento a la<> sección runtime del archivo app.config:

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

Si el archivo de app.config ya contiene el AppContextSwitchOverrides elemento , el nuevo valor debe combinarse con el atributo similar al value siguiente:

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

Consulte también