HRGN CreatRgn(HWND hWnd, int cxClient, int cyClient)
{
    HRGN hRgnTemp[6];
    HRGN hRgnClip = NULL;
    hRgnTemp[0] = CreateEllipticRgn (0, cyClient / 3,
                                    cxClient / 2, 2 * cyClient / 3) ;
    hRgnTemp[1] = CreateEllipticRgn (cxClient / 2, cyClient / 3,
                                    cxClient, 2 * cyClient / 3) ;
    hRgnTemp[2] = CreateEllipticRgn (cxClient / 3, 0,
                                    2 * cxClient / 3, cyClient / 2) ;
    hRgnTemp[3] = CreateEllipticRgn (cxClient / 3, cyClient / 2,
                                    2 * cxClient / 3, cyClient) ;
    hRgnTemp[4] = CreateRectRgn (0, 0, 1, 1) ;
    hRgnTemp[5] = CreateRectRgn (0, 0, 1, 1) ;
    hRgnClip    = CreateRectRgn (0, 0, 1, 1) ;
          
    CombineRgn (hRgnTemp[4], hRgnTemp[0], hRgnTemp[1], RGN_OR) ;
    CombineRgn (hRgnTemp[5], hRgnTemp[2], hRgnTemp[3], RGN_OR) ;
    CombineRgn (hRgnClip,    hRgnTemp[4], hRgnTemp[5], RGN_XOR) ;          
    for( int i = 0; i<6; i++)
    {
delete hRgnTemp[i];
    }    return hRgnClip;
}
我用这个函数创建了一个裁剪区域,函数返回值是一个区域的句柄hRgnClip。在SDK程序WM_SIZE消息中我这样调用这个函数hRgn =  CreatRgn(hWnd,cxClient,cyClient); (hRgn是我定义的一个区域句柄。
但是在WM_PAINT消息中使用hRgn时,hRgn却不是 CreatRgn函数的返回值。
请问该如何返回区域句柄值呢?谢谢大家了。WindowsSDK裁剪区域