2009-04-01 4 views
4

Mon code:MSMQ envoyer un message de problème ... (C#)

string _path = "mymachine\\Private$\\example"; 
    // create a message queue object 
    MessageQueue MQueue = new MessageQueue(_path); 

    // create the message and set the base properties 
    Message Msg = new Message("Messagem"); 
    Msg.ResponseQueue = MQueue; 
    Msg.Priority = MessagePriority.Normal; 
    Msg.UseJournalQueue = true; 
    Msg.Label = "gps1";  

    // send the message 
    MQueue.Send(Msg); 

    // close the mesage queue 
    MQueue.Close(); 

Pas d'erreur, mais rien dans mon MessageQueue ... Toute aide?

Répondre

7

J'ai trouvé le problème ... Mon MessageQueue a été créé avec la transaction vraie ...

+0

C'est un problème gênant avec MSMQ (ou l'emballage .NET, je ne sais pas où le problème vient) . –

+2

Correct. Vous devez remplacer les deux dernières méthodes par .. MQueue.Send (Msg, transaction); transaction.Commit(); MQueue.Close(); .. Sinon, lorsque vous créez la nouvelle file d'attente, désactivez les transactions -> New MessageQueue (_path, false); –

Questions connexes