using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Messaging;
namespace WindowsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
string QueuePath = ".\\private$\\test";
IMessageFormatter formatter = new System.Messaging.BinaryMessageFormatter();
private void button1_Click(object sender, EventArgs e)
{
CreateMessageQueue(QueuePath);
SendMessage(QueuePath, CreateMessage(richTextBox1.Text, formatter));
}
private void button2_Click(object sender, EventArgs e)
{
System.Messaging.Message msg = ReceiveMessage(QueuePath);
msg.Formatter = formatter;
richTextBox2.Text = msg.Body.ToString();
}
private System.Messaging.Message CreateMessage(string text, IMessageFormatter formatter)
{
System.Messaging.Message message = new System.Messaging.Message();
message.Body = text;
message.Formatter = formatter;
return message;
}
private void CreateMessageQueue(string queuePath)
{
if (!MessageQueue.Exists(queuePath))
{
MessageQueue queue = MessageQueue.Create(queuePath);
queue.SetPermissions("Administrators", MessageQueueAccessRights.FullControl);
queue.Label = queuePath;
}
}
private bool SendMessage(string queuePath, System.Messaging.Message msg)
{
if (!MessageQueue.Exists(queuePath))
{
return false;
}
MessageQueue queue = new System.Messaging.MessageQueue(queuePath);
queue.Send(msg);
return true;
}
private System.Messaging.Message ReceiveMessage(string queuePath)
{
if (!MessageQueue.Exists(queuePath))
{
return null;
}
MessageQueue queue = new MessageQueue(queuePath);
System.Messaging.Message message = queue.Receive();
return message;
}
}
}
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Messaging;
namespace WindowsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
string QueuePath = ".\\private$\\test";
IMessageFormatter formatter = new System.Messaging.BinaryMessageFormatter();
private void button1_Click(object sender, EventArgs e)
{
CreateMessageQueue(QueuePath);
SendMessage(QueuePath, CreateMessage(richTextBox1.Text, formatter));
}
private void button2_Click(object sender, EventArgs e)
{
System.Messaging.Message msg = ReceiveMessage(QueuePath);
msg.Formatter = formatter;
richTextBox2.Text = msg.Body.ToString();
}
private System.Messaging.Message CreateMessage(string text, IMessageFormatter formatter)
{
System.Messaging.Message message = new System.Messaging.Message();
message.Body = text;
message.Formatter = formatter;
return message;
}
private void CreateMessageQueue(string queuePath)
{
if (!MessageQueue.Exists(queuePath))
{
MessageQueue queue = MessageQueue.Create(queuePath);
queue.SetPermissions("Administrators", MessageQueueAccessRights.FullControl);
queue.Label = queuePath;
}
}
private bool SendMessage(string queuePath, System.Messaging.Message msg)
{
if (!MessageQueue.Exists(queuePath))
{
return false;
}
MessageQueue queue = new System.Messaging.MessageQueue(queuePath);
queue.Send(msg);
return true;
}
private System.Messaging.Message ReceiveMessage(string queuePath)
{
if (!MessageQueue.Exists(queuePath))
{
return null;
}
MessageQueue queue = new MessageQueue(queuePath);
System.Messaging.Message message = queue.Receive();
return message;
}
}
}
本文转自 h2appy 51CTO博客,原文链接:http://blog.51cto.com/h2appy/184323,如需转载请自行联系原作者