D1110: Leerungsfehler
Ein Flush-Aufruf durch eine fehlerhafte [ Renderzielressource. ] Tags [ tag1, tag2 ] .
Platzhalter
-
Ressource
-
Die Adresse des Renderziels.
-
tag1
-
Der erste Tagwert. Weitere Informationen finden Sie unter SetTags.
-
tag2
-
Der zweite Tagwert. Weitere Informationen finden Sie unter SetTags.
| Fehlerstufe | Warnung |
Beispiele
Beispiel 1: Der folgende Code zeigt, dass sich ein Draw-Aufruf in einem ungültigen Zustand befindet. Um die Warnmeldung zu vermeiden, verwenden Sie SetAntialiasMode, um D2D1 _ ANTIALIAS MODE ANTIALIASED vor einem _ _ FillOpacityMask-Aufruf zu setzen.
if(SUCCEEDED(hr))
{
hr = m_pRenderTarget->CreateBitmap(
D2D1::SizeU(1,1),
NULL,
0,
D2D1::BitmapProperties(D2D1::PixelFormat(
DXGI_FORMAT_A8_UNORM,
D2D1_ALPHA_MODE_PREMULTIPLIED
)),
&m_pBitmap
);
}
m_pRenderTarget->FillOpacityMask(
m_pBitmapMask,
m_pFernBitmapBrush,
D2D1_OPACITY_MASK_CONTENT_GRAPHICS,
&rcBrushRect
);
hr = m_pRenderTarget->Flush();
hr = m_pRenderTarget->EndDraw();
In diesem Beispiel wird die folgende Debugmeldung erzeugt:
D2D DEBUG WARNING - Flush call on render target failed [88990001]. Tags [0, 0].
Beispiel 2: Der folgende Code zeigt, dass flush nach dem EndDraw-Aufruf aufgerufen wird.
// Calling Flush after EndDraw generates a
// flush error message from the debug layer.
hr = m_pRenderTarget->EndDraw();
hr = m_pRenderTarget->Flush();
In diesem Beispiel wird die folgende Debugmeldung erzeugt:
DEBUG WARNING - A Flush call by a render target failed [88990001]. Tags [0, 0].
Mögliche Ursachen
Der Flush-Aufruf kann aus einem von zwei Gründen fehlschlagen. Möglicherweise tritt ein Fehler auf, weil die Methode außerhalb des BeginDraw / EndDraw-Aufrufs aufgerufen wurde, oder weil ein Fehler aufgetreten ist, der von einem der Renderzielvorgänge erzeugt wurde, die seit dem letzten Flush- oder EndDraw-Aufruf verarbeitet wurden. Um das Problem zu beheben, sollte die Anwendung die Ursache des Fehlers ermitteln und die entsprechende Aktion ergreifen.
Fehlerbehebungen
Es gibt viele Gründe, warum ein Flush-Aufruf fehlschlagen kann. Die Anwendung sollte die Ursache des Fehlers ermitteln und die entsprechende Aktion ergreifen.