Solución PERFECTA !!!
Por si alguien le interesa:
1-. Crear una nueva cola(En el explorador de servidores del Visual Studio se pueden crear dentro de Message Queues).
Se pueden crear Públicas o Privadas. Las públicas es que pueden ser accedidas desde otro equipo que esté en red y las privadas solo son usadas desde el equipo en el que se ha creado. Para mi caso, la cree privada.
2-. Implementar el siguiente código:
Código:
private MessageQueue _ColaLlamadas = null;
private void Form1_Load(object sender, EventArgs e)
{
_ColaLlamadas = new MessageQueue(@"gsproyecto11\private$\colaprueba");
_ColaLlamadas.ReceiveCompleted += new ReceiveCompletedEventHandler(_ColaLlamadas_ReceiveCompleted);
_ColaLlamadas.BeginReceive();
}
void _ColaLlamadas_ReceiveCompleted(object sender, ReceiveCompletedEventArgs e)
{
System.Messaging.Message mensajeCola = ((MessageQueue)sender).EndReceive(e.AsyncResult);
this.Invoke((MethodInvoker)delegate
{
lbPeticiones.Items.Add(((ClsMensaje)mensajeCola.Body).Contenido);
});
_ColaLlamadas.BeginReceive();
}
private void button1_Click(object sender, EventArgs e)
{
ClsMensaje objMensaje = new ClsMensaje("un mensajito");
_ColaLlamadas.Send(objMensaje);
}
Asi estoy todo el tiempo recogiendo las peticiones, pero sin sobrecargar el sistema, jejeje. Creo que es la solución perfecta. Cualquier duda o comentario... estoy abierto a los mismos.
Saludos y espero le sirva a alguien !!!
P.D.: Foros de XAML - Silverlight ?? ... snif, snif...