MSMQ Envoyer un message à la File d'attente Distante
J'essaie d'envoyer un message à une file d'attente à distance. Mon processus n'est pas en échec, mais je n'ai toujours pas voir le message sur la file d'attente à distance? Je suppose que ce serait un échec si elle ne pouvait pas traiter le message?
J'ai remarqué que sur ma machine locale la file d'attente à distance est répertorié dans les files d'attente, mais ne voyez pas les messages. Très ignorants ici et tous les exemples montrent que la façon dont je suis en train de faire (ou alors, je suppose) est correcte.
Code (Simple pour tester):
using (var transaction = new TransactionScope())
{
using (var queue = new MessageQueue(@"FormatName:DIRECT=OS:mymachine\MyQueueQueue"))
{
XDocument xdoc = XDocument.Parse("<root/>");
var message = new Message(xdoc.ToString());
queue.Send(message, MessageQueueTransactionType.Single);
}
transaction.Complete();
}
Console.Read();
}
Ce que je fais de mal? Étrange...pas d'erreurs, mais ne voyez pas le message n'importe où. Écrire les œuvres de ma file d'attente locale.
OriginalL'auteur scarpacci | 2012-01-17
Vous devez vous connecter pour publier un commentaire.
La file d'attente que vous voyez sur votre machine locale est comment MSMQ transmet un message à partir de votre appareil à l'ordinateur distant. Alors ne vous inquiétez pas à ce sujet tant qu'il n'y a pas de messages. Si il y avait des messages qui indiquent la distance de la file d'attente n'était pas disponible pour une raison quelconque.
Probablement autorisations pourrait un problème. Cocher l'option envoyer les autorisations sur la file d'attente à distance. Si l'appel de la croix-domaine que vous aurez besoin d'ajouter d'ouverture de session ANONYME de vos autorisations.
Aussi essayer d'activer MSMQ journal des événements (si vous exécutez server 2008 ou au-dessus).
Mise à JOUR
On dirait que vous êtes faisant appel public à l'adresse de la file d'attente. Vous devriez être en utilisant des files d'attente privées. L'adresse est la même, sauf pour le PRIVATE$ la directive:
FormatName:DIRECT=OS:mamachine\PRIVATE$\MyQueueQueue
AUSSI: est-ce votre nom de file d'attente myQueueQueue comme dans votre file d'attente de l'adresse?
merci, c'était de l'Envoyer / Recevoir des perms sur cette file! J'apprécie grandement.
Vous ne verrez rien dans le journal des événements comme qui montre les VRAIS problèmes - pour un système de messagerie, perdre de messages peut être considéré comme normal.
Négatif de la Source de la Journalisation est la meilleure façon de résoudre ce genre de problème que le message dans la File d'attente de lettres Mortes explique la cause du problème.
Sur windows 2008, j'ai configurer les autorisations d'ouverture de session ANONYME pour Envoyer/Recevoir et j'ai du ajouter une entrée du pare-feu de la règle sur le port 3527 protocole UDP. Merci pour le guide
OriginalL'auteur tom redfern