Symptom
Händer något av följande problem när du återger grafik med hjälp av Windows Presentation Foundation (WPF) i ett.NET Framework 3.5 Service Pack 1 (SP1)-baserade program.
Problem 1
Programmet kraschar när du ändrar värdet för egenskapen VisualBrush.Visual i WPF-program.
Problem 2
Minnesläcka i tråden återgivning av WPF-program när du utför någon av följande åtgärder:
-
Använda programrendering pipeline för att rendera en 3D-scen som innehåller ett VisualBrush eller ett DrawingBrush -objekt. Till exempel använder programrendering pipeline när du utför någon av följande åtgärder:
-
Du kan göra på scenen med hjälp av klassen RenderTargetBitmap .
-
Du skriver ut på scenen.
-
Du anger egenskapen rendering nivå till 0.
-
Du kan återge scenen via en anslutning till fjärrskrivbord.
-
-
Du kan göra en scen med hjälp av klassen WriteableBitmap på en dator som inte använder Windows Display Driver Model (WDDM).
-
Du kan använda pipeline rendering genom maskinvara för att återge en scen med en sida vid sida VisualBrush eller en sida vid sida DrawingBrush objekt på en dator som inte använder WDDM.
Problem 3
WPF-program som använder överlappande windows kraschar när du utför någon av följande åtgärder:
-
Du placerar en dator som använder Windows XP Display Driver Model (XPDDM) i vänteläge och sedan du datorn återställs från vänteläge.
-
Du växlar till helskärmsläge konsolläge i Windows XP.
Orsak
Orsak 1
Det här problemet beror på ett allmänt fel returnerades från en rendering tråd när operationer i tråden ordnas felaktigt. Dessa åtgärder medför underordnade objekt om du vill koppla från ett null överordnat objekt.
Till exempel måste ett visuellt objekt bort från ett VisualBrush -objekt innan den kopplas loss från objektet VisualBrush . Åtgärder att ta bort visuellt objekt kan dock beställas felaktigt. Därför visuellt objekt kopplas loss från ett null överordnat objekt.
Orsak 2
Det här problemet uppstår på grund av fel i tråden för rendering för referensräkning.
Orsak 3
Det här problemet beror på en Win32-felkod hanteras felaktigt.
Lösning
Lös det här problemet gäller snabbkorrigeringspaket som beskrivs i följande artikel i Microsoft Knowledge Base:
2667241 En samlad uppdatering är tillgänglig för Windows Presentation Foundation (WPF) för Microsoft.NET Framework 3.5
Mer Information
Stack-utdata
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)
Status
Microsoft har bekräftat att detta är ett problem i Microsoft-produkterna som nämns i avsnittet "Gäller".