Ich habe eine iPhone App, die Bonjour veröffentlicht. Das Mac-Gegenstück funktioniert, sie synchronisieren und tauschen Daten aus. Jetzt muss ich diese kleine Mac-App auf Windows portieren. Ich habe mich entschieden, mit .NET zu gehen (weil das ist, was ich weiß).Mit Apples Bonjour-Service von .NET?
Die App ist nicht komplex, aber ich bin in den frühen Phasen. Ich muss Bonjour Dienste durchsuchen/entdecken. Für diese Aufgabe habe ich Mono.Zeroconf und Apples neuestes SDK (das ein paar C# -Proben enthält) heruntergeladen.
Ich bin nicht wirklich Einfügen von Code, weil ich wirklich die Proben kopieren/einfügen. In der Tat hat Mono.Zeroconf eine MZClient.exe, die verwendet werden kann, um "die gesamte API" zu testen.
Mein erster Test war - auf der gleichen Box - öffnen Sie zwei cmd.exe und starten Sie einen MZclient registrieren einen Dienst und auf der anderen, starten Sie es und "entdecken Sie es".
Es funktioniert nicht.
Hier ist der Server:
C:\MZ>MZClient -v -p "_http._tcp 80 mysimpleweb”
*** Registering name = 'mysimpleweb', type = '_http._tcp', domain = 'local.'
*** Registered name = ‘mysimpleweb’
Auf der anderen Terminal:
c:\MZ>MZClient -v -t "_http._tcp"
Creating a ServiceBrowser with the following settings:
Interface = 0 (All)
Address Protocol = Any
Domain = local
Registration Type = _http._tcp
Resolve Shares = False
Hit ^C when you're bored waiting for responses.
Und das ist es. Nichts passiert. Ich habe natürlich mit verschiedenen Diensten vergebens versucht. Habe sogar ein bisschen mit dieser Domain gespielt. Denken Sie daran, dies ist die gleiche Box. Ich habe es auf einem anderen Computer versucht, da dies eine VM innerhalb von OSX war, also ging ich weiter und probierte eine "reine" Win XP aus. Nichts.
Hinweis: Ich habe Apple Bonjour Service (up und läuft) und auch das Apple SDK (später installiert).
Da dies nicht funktionierte, entschied ich mich, das Apple SDK auszuprobieren, das ein Interop und ein paar vorkompilierte Samples (und seinen Quellcode) hat.
Kurzgeschichte, weder die mDSNBrowser.exe noch die SimpleChat.exe arbeiten/sehen/entdecken nichts.
Meine Box ist ein Win7 unter Parallels, aber das scheint nichts zu beeinflussen, da das native XP die gleichen Probleme aufweist.
Was mache ich so furchtbar falsch?
Gerade für die Richtigkeit, glaube ich, der Service-Typ mit einem Punkt enden sollte, so wäre es „_http._tcp sein." – Thompsonian
Ich hatte einige Probleme damit. Der Grund, warum es nichts gefunden hat, könnte Message Pump nicht richtig für Ihren mDSNBrowser. Das Wichtige ist auch, was Aktionen haben Sie registriert. – Yoda