D1180:BeginDraw 错误状态

BeginDraw 多次调用,但未对 EndDraw 进行相应的调用。

 

可能的原因

应用程序多次调用 BeginDraw 而不在同一目标上调用 EndDraw。 使用 Direct2D 时,应用程序应将对 BeginDraw 的每次调用与后续 EndDraw 匹配。 或者,如果目标处于错误状态,并且 BeginDraw 调用不允许目标可呈现,则可能会出现此消息。

可能的修复方法

确保对 BeginDraw 的每次调用都与后续 EndDraw 匹配。 使用 Flush 或 EndDraw 将命令提交到目标时,请先验证返回的结果是否S_OK,然后再尝试再次使用该目标。