#include <WindowsConstants.au3>
Global $k = 0

GUIRegisterMsg($WM_DISPLAYCHANGE, "WM_DISPLAYCHANGE")
$Gui = GUICreate("WM_DISPLAYCHANGE", 370, 140)
GUICtrlCreateLabel('Функция WM_DISPLAYCHANGE выполняется при изменении разрешения экрана и глубины цвета.', 5, 5, 360, 130)
GUISetState()

Do
Until GUIGetMsg() = -3

Func WM_DISPLAYCHANGE($hWnd, $iMsg, $wParam, $lParam)
	$w = BitAND($lParam, 0x0000FFFF) ; _WinAPI_LoWord
	$h = BitShift($lParam, 16) ; _WinAPI_HiWord
	$b = BitAND($wParam, 0x0000FFFF) ; _WinAPI_LoWord
	$k += 1
	WinSetTitle($Gui, '', 'Вызов ' & $k & ' раз, w=' & $w & ' h=' & $h & ' b=' & $b)
EndFunc