2014-09-06 1 views
0

Я использовал имена устройств обнаружения класса через bonjour (с NSNetServiceBrowser). Пытаясь найти устройство в локальной сети через кого-л:NSNetServiceBrowser: почему bonjour не видит компьютер в Windows 7 в локальной сети?

[self.bonjourBrowser searchForServicesOfType:@"_smb._tcp" inDomain:nil]; 

В методе делегата найдено только два устройства:

  • D-Link DNS-315
  • AirPort Time Capsule

Но bonjour не видит третьего устройства (компьютер на окнах 7). Хотя Finder видит это, и я могу подключиться к нему через smb: //192.168.1.5

Как обнаружить компьютер на Windows 7 в локальной сети через Bonjour? Может указывать другой тип при поиске (а не «_smb._tcp») или другой домен?

+0

Установили ли вы услуги bonjour для Windows на этом компьютере? – Paulw11

+0

Нет, у меня нет. Но как Finder обнаружил этот компьютер? –

ответ

0

Finder не использует Bonjour - он использует SMB напрямую. Когда вы ищете _ «smb._tcp», вы ищете услуги SMB, рекламируемые с помощью Bonjour, так же как «_ipp._tcp» будет протоколом интернет-печати на TCP, который рекламируется Bonjour.

Bonjour services for Windows - это бесплатная загрузка с Apple, и без нее вы не обнаружите компьютеры Windows с использованием Bonjour.

0

Вам необходимо исправить свой тип обслуживания до @ "_ smb._tcp.". Обратите внимание, что символ периода в конце требуется.

Смежные вопросы