あ〜、もう

LRESULT Window::WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
  // メンバに自由にアクセス
}

static LRESULT CALLBACK Window::InnerWndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
  Window* win = (Window*)::GetWindowLong(hWnd, GWL_USERDATA);
  if (win) {
    ret = win->WndProc(hWnd, uMsg, wParam, lParam);
  } else {
    ret = ::DefWindowProc(hWnd, uMsg, wParam, lParam);
  }
}