Udostępnij przez


D1234: Pędzl zasobów o wartości null

Nie można użyć pędzla mapy bitowej lub pędzla obrazu do rysowania, gdy skojarzona mapa bitowa/obraz ma wartość NULL.

 

Możliwe przyczyny

Aplikacja próbowała renderować element pierwotny przy użyciu identyfikatora ID2D1BitmapBrush lub ID2D1ImageBrush, którego mapa bitowa lub obraz miał wartość NULL.

Możliwe poprawki

Przed ich użyciem upewnij się, że mapy bitowe lub pędzle obrazów mają przypisaną prawidłową mapę bitową lub obraz. Aplikacja może to zrobić w czasie tworzenia lub później przy użyciu identyfikatora ID2D1BitmapBrush::SetBitmap lub ID2D1ImageBrush::SetImage. Funkcja Direct2D umożliwia korzystanie z zasobów pędzla o wartości NULL, dzięki czemu aplikacje mogą mieć swobodę wydawania zasobów pędzla po ich użyciu do renderowania. Aplikacje mogą to zrobić, jeśli zasób mapy bitowej lub obrazu jest szczególnie kosztowny, a scenariusz wymaga natychmiastowego zwolnienia. Ustawienie zasobu pędzla na wartość NULL uniemożliwia usłudze Direct2D zachowanie zaległego odwołania do niego. Jeśli jednak aplikacja przypisze zasób szczotki do wartości NULL, nie powinna próbować używać pędzla do momentu przypisania nowego, prawidłowego zasobu.