2010-03-04 2 views
3

Я действительно ограничен языками программирования? Я могу себе представить, что для использования Bonjour мне нужны специальные библиотеки, которые могут быть недоступны для любого языка. Итак, тогда мне нужно использовать те языки, которые имеют соответствующие библиотеки. В качестве второго варианта я могу себе представить, что Bonjour предоставляет интерфейс, который может использоваться практически на любом языке (например, Bonjour сохраняет информацию в специальном файле или в переменных среды, и я могу использовать большинство языков для доступа к этой информации) ,Какие языки программирования я могу использовать для написания программного обеспечения Bonjour?

P.S. У меня особый интерес к PHP.

+0

Может быть, это больше подходит для StackOverflow – chmeee

+0

Можно ли перенести его на StackOverflow? – Roman

+0

И я думал, что это запрос программирования Hello World :) – Pentium10

ответ

1

У вас будет больше удачи в поиске «ZeroConf», который является именем фактического протокола, а не «Bonjour», что является конкретной реализацией Apple протокола.

+0

Ну, в моем случае мне нужно работать с Bonjour (я знаю, что он будет установлен в Windows XP, и мне нужно его использовать). – Roman

+2

Что-нибудь для ZeroConf должно работать с Bonjour. – ceejayoz

+0

ceejayoz, мне нужно использовать Bonjour. И я думаю, что у этого программного обеспечения есть специальный интерфейс для «общения» с языками программирования. И я думаю, что другая реализация ZeroConf будет иметь другой интерфейс. Разве нет? Я могу ошибаться. – Roman

2

Много языков имеют привязки ZeroConf, включая Java и .Net, и есть пример использования его в Python here. Он использует D-Bus, чтобы поговорить с daeomon. Это list of bindings для D-Bus включает в себя PHP, Python, Perl, Java, .Net, C++, Haskell, OCaml, Squeak и многое другое. Есть даже привязка Паскаля!

Нет, вы не очень ограничены языками программирования.

+0

Является ли D-Bus программным обеспечением zeroconf? Это что-то вроде Бонджур? Или он должен быть (может быть) использован в дополнение к Bonjour? В моем конкретном случае мне нужно использовать Bonjour. – Roman

+0

D-Bus - это способ взаимодействия процессов друг с другом. Поэтому вы должны использовать библиотеку D-Bus, чтобы поговорить с вашим сервисом Bonjour/ZeroConf. Это похоже на COM. Поскольку вы находитесь в Windows, вы захотите использовать COM, как предлагает Lachlan. –

1

Apple's Bonjour for Windows SDK установлен как COM-компонент, который можно вызвать из PHP через COM functions.

Образец кода на нескольких языках установлен с SDK. Хотя PHP не является одним из них, примеры должны быть удобочитаемыми.

Другим источником информации об API является Bonjour documentation в справочной библиотеке Mac OS X.

+0

Я установил Bonjour от Apple для Windows SDK. В папке «Образцы» есть «C», «CS», «Java», «VB». Нет PHP. – Roman

+0

@ Roman: Итак? Просто читайте и приспосабливайте. –

0

Roman, так как вы особенно заинтересованы в PHP, вы можете оформить в php5-Avahi расширение: http://code.google.com/p/php5-avahi/

Я не использовал его еще (только начали исследовать этот же вопрос для себя), но похоже на то, что вы ищете: способ писать сообщения Bonjour (aka, Avahi, Zeroconf, Rendevous, mDNS), транслировать/потреблять в PHP.

К сожалению, это выглядит довольно застойным проектом (4 коммита, всего в 2009 году). Надеюсь, это поможет вам начать.

Надежда, что помогает, Benjamin

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