已调用 EndDraw,但呈现目标未处于有效状态。 这可能会导致调用 EndDraw 而不使用匹配的 BeginDraw。
可能的原因
应用程序多次调用 EndDraw,而无需在同一目标上调用 BeginDraw。 使用 Direct2D 时,应用程序应将每个对 EndDraw 的调用与 BeginDraw 之前的调用匹配。 或者,如果目标处于错误状态且无法呈现,则可能会出现此消息。
可能的修复方法
确保对 BeginDraw 的每个调用都与后续 EndDraw 匹配。 使用 Flush 或 EndDraw 将命令提交到目标时,在尝试再次使用目标之前,请验证返回的结果是否S_OK。