D1110:刷新失败
呈现器目标的刷新调用失败 [资源]。 标记 [tag1, tag2]。
占位符
-
资源
-
呈现目标的地址。
-
tag1
-
第一个标记值。 有关详细信息 ,请参阅 SetTags 。
-
tag2
-
第二个标记值。 有关详细信息 ,请参阅 SetTags 。
错误级别 | 警告 |
示例
示例 1: 下面的代码显示绘图调用处于无效状态。 若要避免出现警告消息,请在 FillOpacityMask 调用之前使用 SetAntialiasMode 设置D2D1_ANTIALIAS_MODE_ANTIALIASED。
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();
此示例生成以下调试消息:
D2D DEBUG WARNING - Flush call on render target failed [88990001]. Tags [0, 0].
示例 2: 下面的代码显示 Flush 是在 EndDraw 调用之后调用的。
// Calling Flush after EndDraw generates a
// flush error message from the debug layer.
hr = m_pRenderTarget->EndDraw();
hr = m_pRenderTarget->Flush();
此示例生成以下调试消息:
DEBUG WARNING - A Flush call by a render target failed [88990001]. Tags [0, 0].
可能的原因
Flush 调用可能由于以下两个原因之一而失败。 它可能会失败,因为该方法是在 BeginDraw/EndDraw 调用外部调用的,也可能因为自上次 Flush 调用或 EndDraw 调用以来已处理的呈现器目标操作之一生成错误而失败。 若要解决此问题,应用程序应确定错误原因并采取相应的措施。
修复项
刷新调用可能会失败的原因有很多。 应用程序应确定错误原因并采取适当的措施。