Bonjour à tous,
J'essaye d'implémenter ZeroConf pour un programme qui devra connaitre et afficher toutes les machines qui utilise le même programme et le même service bonjour.
Je me suis très lourdement inspiré de :
http://qt-quarterly.developpez.com/qq-23/qt-zeroconf/
Mais je n'arrive pas à utiliser correctement Il se trouve qu'au moment d'enregistrer le service Bonjour, la méthode :
QHostInfo::localHostName();
me renvoit bien le nom de la machine mais y ajoute un .local
(je suis sous MAC Osx Snow Leopard)
Or si l'on passe à lookupHost un String qui contient un .local, rien n'y fait il ne trouve pas l'adresse.
1 2
| QHostInfo::lookupHost(QString::fromUtf8(strRemoteHostname),
serviceResolver, SLOT(finishConnect(const QHostInfo &))); |
Si je fais :
1 2 3 4 5
|
QString strRemoteHostname = hosttarget;
strRemoteHostname = strRemoteHostname.section(".local", 0, 0);
QHostInfo::lookupHost(QString::fromUtf8(strRemoteHostname),
serviceResolver, SLOT(finishConnect(const QHostInfo &))); |
là ça passe.
Par contre si je tente de me connecter en local, c'est à dire à ma propre machine... j'ai un message d'erreur :
Lookup failed: "Host not found"
Avec le nom en .local la réponse est :
Lookup failed: "Invalid hostname"
Auriez-vous une petite idée ??
Merci par avance !
Gabriel
Partager