case WM_CREATE:
SetTimer(hWnd, 1, 1000, NULL );
break;

case WM_TIMER:
{
    auto    HDC      hDC;
    auto    RECT     rtClipBox,
    rtClient;

    hDC = GetDC( hWnd );
    if ( hDC )
    {
        switch ( GetClipBox( hDC, &rtClipBox ) )
        {
        case NULLREGION:    // Leerer Anzeigeausschnitt
            // Viermal piepen: Nullregion
            MessageBeep( 0 );
            MessageBeep( 0 );
            MessageBeep( 0 );
            MessageBeep( 0 );
            break;

        case COMPLEXREGION: // berlappende Rechtecke
            // Zweimal piepen: kompliziert, kompliziert...
            MessageBeep( 0 );
            MessageBeep( 0 );
            break;

        case SIMPLEREGION:  // keine berschneidenden Kanten
            GetClientRect( hWnd, &rtClient );
            if ( !EqualRect( &rtClipBox, &rtClient ) )
            {
                // Einmal piepen: die Arbeitsflche wird
                // teilweise verdeckt oder ist nicht vollstndig
                // auf dem Bildschirm.
                MessageBeep( 0 );
            }
            else
            {
                // Die Arbeitsflche ist vollstndig sichtbar
                // und vollstndig auf dem Bildschirm.
            }
            break;

        case ERROR:
            break;

            default:
            break;
        }
        ReleaseDC( hWnd, hDC );
    }
}
break;

