Windows8、C++、Visual Studio Express 2012 for Windows Desktopの環境で、
クライアント領域を取得したいのですが、

HWND hWnd = CreateWindow(...);
LPRECT Rect == NULL;
if(GetWindowRect(hWnd, Rect) == 0) MessageBox(NULL, _T("取得に失敗しました"), _T("エラー"), MB_OK);
ShowWindow(hWnd, SW_SHOW);
UpdateWindow(hWnd);

という様なプログラムにするとGetWindowRect()は失敗するのですが、
ウィンドウそのものは問題なく表示されます。

ウィンドウが表示されるという事はCreateWindowが成功していてhWndにウィンドウのハンドルが返っているはずなので、
GetWindowRect()で取得出来ると思うのですが何がいけないのでしょう?