REVISIÓN: Puede experimentar varios problemas cuando representar gráficos mediante Windows Presentation Foundation (WPF) en una aplicación basada en .NET Framework 3.5 SP1

Seleccione idioma Seleccione idioma
Id. de artículo: 967634 - Ver los productos a los que se aplica este artículo
Expandir todo | Contraer todo

En esta página

Síntomas

Puede experimentar uno de los problemas siguientes al representar gráficos mediante el uso de Windows Presentation Foundation (WPF) en un Service Pack 1 (SP1) de .NET Framework 3.5-aplicación basada en.

Problema 1

Cuando cambia el valor de la propiedad VisualBrush.Visual en una aplicación WPF, la aplicación se bloquea.

Problema 2

Se produce una pérdida de memoria en el subproceso de representación de una aplicación WPF cuando realiza una de las acciones siguientes:
  • Utilice la canalización de procesamiento por software para representar una escena 3D, que incluye un objeto VisualBrush o un objeto DrawingBrush. Por ejemplo, utiliza la canalización de procesamiento por software al realizar una de las acciones siguientes:
    • La escena se representa utilizando la clase RenderTargetBitmap.
    • Imprimir la escena.
    • Establezca la propiedad de nivel de representación en 0.
    • Representar la escena a través de una conexión a Escritorio remoto.
  • Representar una escena utilizando la clase WriteableBitmap en un equipo que no utilice Windows Display Driver Model (WDDM).
  • Utilice la canalización de procesamiento de hardware para representar una escena mediante un objeto VisualBrush en mosaico o un objeto DrawingBrush en mosaico en un equipo que no utilice el WDDM.

Problema 3

Las aplicaciones de WPF que utilizan en capas de bloqueo de ventanas cuando realiza una de las acciones siguientes:
  • Pone un equipo que utiliza el modelo de controlador de pantalla de Windows XP (XPDDM) en espera y, a continuación, reanudar el equipo desde el modo de suspensión.
  • Cambie al modo de consola de pantalla completa en Windows XP.

Causa

Causa 1

Este problema se produce porque un subproceso de representación devuelve un error genérico cuando las operaciones en el subproceso se ordenan incorrectamente. Estas operaciones hacen que los objetos secundarios desasociar de un objeto primario null.

Por ejemplo, un objeto Visual debe quitarse un objeto VisualBrush antes de que se separa del objeto VisualBrush. Sin embargo, las operaciones para quitar el objeto Visual se pueden solicitar incorrectamente. Por tanto, el objeto Visual se desasocia de un objeto primario null.

Causa 2

Este problema se produce debido a un error en el subproceso de representación de recuento de referencias.

Causa 3

Este problema se produce porque un código de error Win32 se controla incorrectamente.

Solución

Información de revisiones

Hay un hotfix compatible de Microsoft. Sin embargo, se diseñó para corregir el problema que se describe en este artículo. Aplíquela sólo a los sistemas que experimenten este problema específico. Este hotfix puede ser sometido a comprobaciones adicionales. Por tanto, si no se ve muy afectado por este problema, se recomienda que espere al próximo Service Pack que contenga este hotfix.

Para resolver este problema inmediatamente, póngase en contacto con servicios de soporte técnico de Microsoft con el fin de obtener la revisión. Para obtener una lista completa de los números de teléfono de los servicios de soporte técnico de Microsoft e información acerca de los costos de soporte técnico, visite el siguiente sitio Web:
http://support.microsoft.com/contactus/?ws=support
Nota en casos especiales, los costos derivados normalmente de las llamadas al soporte técnico pueden cancelarse si un profesional de soporte técnico de Microsoft determina que una actualización específica resolverá el problema. Los costos habituales de soporte se aplicarán a las preguntas de soporte técnico adicionales y problemas que no reúnan las condiciones necesarias para la actualización en cuestión.

Para descargar este hotfix desde MSDN Code Gallery, visite el siguiente sitio Web:
http://code.msdn.microsoft.com/KB967634


Nota La Galerie de code MSDN muestra los idiomas para el que la revisión está disponible. Si no ve su idioma enumerado, es porque la página de recursos de galería de código no está disponible para ese idioma.

Nota Como alternativa, puede descargar este paquete acumulativo de revisiones desde el siguiente sitio Web de Microsoft Connect:
http://connect.microsoft.com/VisualStudio/Downloads/DownloadDetails.aspx?DownloadID=21986

Requisitos previos

Debe tener Microsoft .NET Framework 3.5 Service Pack 1 (SP1) instalado para aplicar esta revisión.

Requisito de reinicio

No es necesario que reinicie el equipo después de aplicar este hotfix.

Información acerca de la sustitución de la revisión

Este hotfix no sustituye a otros hotfix.

Información de archivo

La versión en inglés de este hotfix tiene los atributos de archivo (o atributos de último archivo) mostrados en la siguiente tabla. Las fechas y horas de estos archivos se muestran en hora universal coordinada (UTC). La información de los archivos se convertirá a la hora local cuando la vea. Para encontrar la diferencia entre la UTC y la hora local, utilice la ficha zona horaria en la fecha y hora elemento del panel de control.
Windows XP x 86 versión
Contraer esta tablaAmpliar esta tabla
Nombre de archivoArchivo VersiónTamaño de archivoFechaTiempoPlataforma
PresentationCore.dll3.0.6920.40004,214,78410-Mar-200923: 02x 86
wpfgfx_v0300.dll3.0.6920.40001,736,02410-Mar-200923: 02x 86

Windows XP x 64 versión
Contraer esta tablaAmpliar esta tabla
Nombre de archivoArchivo VersiónTamaño de archivoFechaTiempoPlataforma
PresentationCore.dll3.0.6920.40003,996,67210-Mar-200922: 33x 64
wpfgfx_v0300.dll3.0.6920.40002,254,16810-Mar-200922: 33x 64

Más información

Salida de pila
System.InvalidOperationException: An unspecified error occurred on the render thread.
at System.Windows.Media.MediaContext.NotifyPartitionIsZombie(Int32 failureCode)
at System.Windows.Media.MediaContext.NotifyChannelMessage()
at System.Windows.Interop.HwndTarget.HandleMessage(Int32 msg, IntPtr wparam, IntPtr lparam)
at System.Windows.Interop.HwndSource.HwndTargetFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Boolean isSingleParameter)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Boolean isSingleParameter, Delegate catchHandler)

Estado

Microsoft ha confirmado que se trata de un problema de los productos de Microsoft enumerados en la sección "La información de este artículo se refiere a:".

Propiedades

Id. de artículo: 967634 - Última revisión: lunes, 19 de octubre de 2009 - Versión: 2.1
La información de este artículo se refiere a:
  • Microsoft .NET Framework 3.5 Service Pack 1
Palabras clave: 
kbmt kbhotfixserver kbexpertiseadvanced kbqfe kbsurveynew KB967634 KbMtes
Traducción automática
IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.
Haga clic aquí para ver el artículo original (en inglés): 967634

Enviar comentarios

 

Kontaktieren Sie uns, um weitere Hilfe zu erhalten

Kontaktieren Sie uns, um weitere Hilfe zu erhalten
Wenden Sie sich an den Answer Desk, um professionelle Hilfe zu erhalten.