D1180:BeginDraw 不正確的狀態

BeginDraw 多次呼叫,而不需要對 EndDraw 的對應呼叫。

 

可能的原因

應用程式對 BeginDraw 進行多個呼叫,而不在同一個目標上呼叫 EndDraw。 使用 Direct2D 時,應用程式應該會比對 BeginDraw 的每個呼叫與後續 EndDraw。 或者,如果目標處於錯誤狀態,且 BeginDraw 呼叫不允許轉譯目標,則可能會發生此訊息。

可能修正

確定每個 BeginDraw 呼叫都與後續的 EndDraw 相符。 使用 Flush 或 EndDraw 將命令提交至目標時,請先確認傳回的結果是S_OK,然後再嘗試再次使用目標。