А что интересует-то?
У меня немножко было работы с этим хозяйством.
Инициализация:
#region Messaging
string QueuePath = @".\Private$\WmpNow";
MessageQueue mq = null;
void InitMessaging() {
InitMq();
if(mq != null) {
mq.Purge();
string StartMsg = string.Format("Start WMP at {0}", DateTime.Now);
mq.Send(StartMsg, StartMsg);
mq.Close();
}
}//InitMessaging
void InitMq(){
try{
if(!MessageQueue.Exists(QueuePath)) {
//Для использования очереди сообщений, её надо создать вручную.!!!
}
if(MessageQueue.Exists(QueuePath)) {
MessageQueue.EnableConnectionCache = true;
mq = new MessageQueue(QueuePath);
mq.UseJournalQueue = false;
mq.MaximumQueueSize = 10000; //kbytes
} else {
mq = null;
}
}catch{
mq = null;
}
}
#endregion
Запись данных:
#region Messaging
if(useMessaging){
if(mq == null) InitMessaging();
if(mq != null) {//Messagig System is available
try {
System.Messaging.Message msg = new System.Messaging.Message(mf);
msg.TimeToBeReceived = new TimeSpan(24, 0, 0);
msg.Label = this.UserName+"."+mf.MediaType;
mq.Send(msg);
if(verbose > 0) {
MessageBox.Show(string.Format("Data {0}saved in queue\n{1}",
"",QueuePath), descr,MessageBoxButtons.OK,MessageBoxIcon.Information);
}
} catch(Exception ex) {
//служба упала?
if(verbose > 0) {
MessageBox.Show(
string.Format("Data {0}saved in queue\n{1}\nError:\n{2}\nQueueing stopped",
"NOT ",QueuePath,ex.Message), descr,MessageBoxButtons.OK,MessageBoxIcon.Exclamation);
}
mq=null;
}finally{
if(mq!=null)
mq.Close();
}
}
}
#endregion
данное сообщение получено с www.gotdotnet.ru
ссылка на оригинальное сообщение