Ich habe eine kleine .NET-Konsolen-App, die auf einem Windows CE 5-Gerät läuft, das RFID-Tag-Informationen sammelt. Wenn jedes Tag gelesen wird, schreibt es die relevanten Daten in eine entfernte Nachrichtenwarteschlange, die auf einem Windows 7-Rechner sitzt. Die Warteschlange ist privat, also greife ich explizit darauf zu, was ich verstehe. Es ist transaktional, obwohl ich nicht glaube, dass das im Kontext des Problems relevant ist, da ich glaube, dass der Standardwert für SendMsg Automatisch ist. Ich könnte natürlich falsch liegen.MSMQ Eine Nachricht von Windows CE 5 an Windows 7 senden
mit (var myQueue = new Message ("Formatname: Direkt = OS: w7machinename \ private $ \ Tags")) { versuchen { myQueue.Send (NEWTAG); } catch (Ausnahme ex) { Console.WriteLine (ex.Message); } }
Wenn ich das Programm ausführen keine Ausnahme ausgelöst wird. In jeder Hinsicht scheint es die Daten in die Warteschlange geschrieben zu haben. Wenn ich jedoch die Warteschlange mit QueueExplorer betrachte, sind keine Nachrichten in der Warteschlange. Wenn ich nach dem Ausführen gehe ich auf meine Win CE 5 Gerät Dos Eingabeaufforderung und msmqadm enum Warteschlangen Ich sehe, dass es über die Warteschlange weiß, es heißt es ist privat, Remote und inaktiv mit 0 msg und 0 Bytes.
Ich habe in anderen Posts gesehen, dass das Ändern der Berechtigungen in der Warteschlange keinen Unterschied macht, aber eine Klarstellung wäre gut. Auch jemand erwähnte Firewall und Ports, aber ich war etwas verwirrt von der Antwort.
Ich hoffe, dies ist genug Informationen für jemanden, mein Problem/Fehler meiner Wege zu sehen und danke im Voraus für jede Hilfe oder Hinweise.
Entschuldigung für die Formatierung des Quellcodes. Mit freundlichen Grüßen Kindo Malay