System używa dwóch metod do routowania wiadomości do procedury okna: Ogłaszanie wiadomości do kolejki first-in, first-out o nazwie kolejka komunikatów, obiekt pamięci zdefiniowanych w systemie, który tymczasowo przechowywane są wiadomości i wysyłanie wiadomości bezpośrednio do procedury okna.
Wiadomości wysłane do kolejki wiadomości są nazywane, wiadomości z kolejki. Są one głównie wynikiem wprowadzania danych przez użytkownika wprowadzone za pomocą myszy lub klawiatury, takie jak WM_MOUSEMOVE, WM_LBUTTONDOWN, WM_KEYDOWNi używając funkcji wiadomości. Inne kolejce wiadomości zawierają czasomierz, malowanie i Zakończ wiadomości: WM_TIMER, WM_PAINTi WM_QUIT. Większość innych wiadomości, które są wysyłane bezpośrednio do procedury okna, są nazywane nonqueued wiadomości.