Udostępnij przez


D1180: BeginDraw Niepoprawny stan

Element BeginDraw był wywoływany wiele razy bez odpowiedniego wywołania elementu EndDraw.

 

Możliwe przyczyny

Aplikacja wykonała wiele wywołań do elementu BeginDraw bez wywoływania elementu EndDraw w tym samym obiekcie docelowym. Podczas korzystania z funkcji Direct2D aplikacje powinny odpowiadać każdemu wywołaniu funkcji BeginDraw z kolejnym endDraw. Alternatywnie ten komunikat może wystąpić, jeśli element docelowy jest w błędnym stanie, a wywołanie BeginDraw nie zezwalało na renderowanie obiektu docelowego.

Możliwe poprawki

Upewnij się, że każde wywołanie elementu BeginDraw jest zgodne z kolejnym elementem EndDraw. Podczas przesyłania poleceń do obiektu docelowego przy użyciu funkcji Flush lub EndDraw sprawdź, czy zwrócony wynik jest S_OK przed ponowną próbą użycia obiektu docelowego.