#include <windows.h>
#include <iostream>
using namespace std;
WNDCLASSEX ventana; 
LRESULT CALLBACK manejaEventos(HWND manejador , UINT mensaje, WPARAM wparam , LPARAM lparam){
	DefWindowProc(manejador, mensaje, wparam , lparam);

}	
int APIENTRY WinMain(HINSTANCE instanciaDelPrograma, 
		HINSTANCE previo, LPSTR argumentos , int modo){
	char nombre[] = "MiVentana";
	ventana.cbSize = sizeof(WNDCLASSEX);
	ventana.hCursor = LoadCursor(NULL , IDC_ARROW);
	ventana.hIcon = LoadIcon(NULL , IDI_APPLICATION);
	ventana.hIconSm = LoadIcon(NULL , IDI_WINLOGO);
	ventana.lpszClassName = nombre;
	ventana.hbrBackground = (HBRUSH) COLOR_WINDOW;
	ventana.lpfnWndProc = manejaEventos;	
	ventana.style = 0;
	if(!RegisterClassEx(&ventana)){
		cout << "no se pudo registrar la ventana" << endl;
		return 0;
	}

	HWND manejador = CreateWindow(nombre, "Mi Ventana", WS_OVERLAPPEDWINDOW,
			0,0,640,400, NULL, NULL, instanciaDelPrograma, NULL );

	if (manejador == NULL){
		cout << "Error al crear ventana";
		return 0;
	}

	ShowWindow(manejador, modo);
	UpdateWindow(manejador);

	MSG msg;
	while(GetMessage(&msg, NULL, 0, 0)){
		DispatchMessage(&msg);
	}
	return msg.wParam;

}
