Приложение делает недействительным часть окна и устанавливает обновляемый регион при помощи использования функции InvalidateRect или InvalidateRgn. Эти функции добавляют заданный прямоугольник или регион (в координатах рабочей области) к обновляемому региону, комбинируя прямоугольник или регион с чем-нибудь, что система или приложение, возможно, раньше добавили к обновляемому региону.
Функции InvalidateRect и InvalidateRgn не генерируют сообщения WM_PAINT. Вместо этого система накапливает внесенные изменения этими функциями и свои собственные изменения пока окно обрабатывает другие сообщения в своей очереди сообщений. Накопив изменения, окно обрабатывает все изменения сразу вместо того, чтобы обновлять кусочками и частями за один раз.
Функции ValidateRect и ValidateRgn подтверждают действительность части окна, исключая заданный прямоугольник или регион из обновляемого региона. Эти функции обычно используются тогда, когда окно обновило конкретную часть экрана в обновляемом регионе, перед тем, как получило сообщение WM_PAINT.