function EnviarAjax(url, llamadaFuncion, metodo, tipo, datos, parametros)
{
	function ProcesarPeticion()
	{
		switch (objetoAjax.readyState)
		{
			case 0: // Sin inicializar

				break;	
			case 1: // Cargando

				break;	
			case 2: // Cargado

				break;					
			case 3: // Interactivo (recibido parte de los datos)

				break;		
			case 4: // Completo
				if (objetoAjax.status == 200) 
				{
					if (funcionAEjecutar)
					{
						funcionAEjecutar(objetoAjax.responseXML, parametros);
					}
				}
				break;
			default:
				alert("Ha habido un problema con la petición:\n" + objetoAjax.status + ":\t" + objetoAjax.statusText + "\n" + objetoAjax.responseText);
				break;
		}
	}

	var objetoAjax = null;
	var funcionAEjecutar = llamadaFuncion;

	if (window.XMLHttpRequest) 
	{
		// moz et al
		objetoAjax = new XMLHttpRequest();
	} 
	else if (window.ActiveXObject) 
	{
		// ie
		objetoAjax = new ActiveXObject("Microsoft.XMLHTTP");
	}
	
	if (objetoAjax) 
	{
		objetoAjax.onreadystatechange = ProcesarPeticion;
		objetoAjax.open(metodo, url, true);
		//objetoAjax.setRequestHeader('Content-Type',tipo);
		objetoAjax.send(datos);
	}
}
