2010-09-07 5 views

ответ

4

Я думал, что я сделал это работать между MacBook и мой iPhone симулятор однако он никогда не работал в папках совместно на окна машины .. пожалуйста, обратитесь к отдельному вопросу я разместил - Using NSNetService class to make an SMB tcp ip connection to a folder shared on windows machine - с шагами, которые я взял ...

+1

Вы вообще не работали. Как ответ на ваш связанный вопрос, «NSNetService» связан с обнаружением сервиса на основе Bonjour. Это не имеет никакого отношения к фактическому общению через протокол SMB. – lemnar

+0

Вы правы. Я отправил это, прежде чем получил ответ на связанный вопрос. Большая часть путаницы объясняется отсутствием документации о том, что параметр «type» делает в следующей строке кода: self.netService = [[[NSNetService alloc] initWithDomain: @ "10.212.19.121" type: @ "_ smb._tcp." name: @ "lanmanserver"] autorelease] ' –

1

не уверен, SMB, но я был в состоянии читать/записывать файлы на взломанный IPad с помощью SFTP. OS версии 4.1, 4.2, 4.3.

На стороне примечания, я думаю, что вопрос нуждается в небольшом разъяснении - что именно вы пытаетесь сделать, и работаете ли вы с обычным или джейлбрейк-устройством. Ответы могут сильно различаться, зная эти вещи.

0

я использовал от самой библиотеки самбы пакета для малых и средних бизнеса операций по КСНО. Вы можете посмотреть мой проект https://github.com/kolyvan/kxsmb (обтекатель цели-c на libsmbclient). Пока он поддерживает ограниченный набор операций SMB. Он в основном был разработан для просмотра локальной сети и получения файлов из SMB-акций.

+0

' libsmbclient' является GPL, что означает, что любое приложение iOS, которое с ним связано, также должно быть GPL. – adib

0

У iOS нет API-интерфейсов для работы с SMB. Тем не менее, SMB в настоящее время документально подтвержден Microsoft, и реализация его не является невозможной (хотя и нелегкой). Я создал бесплатный проект, который содержит большую часть того, что вам нужно для обработки SMB. См

https://sourceforge.net/projects/smb4ios/

Он не использует Samba или любые другие библиотеки тяжеловесных. Работает в основном для принтеров, но с тем, что уже существует, легко добавить поддержку для обработки файлов или что-то еще.

Меня не интересует материал GPL, вы можете просто повторно использовать код без проблем. Просто проверьте, имеет ли библиотека NTLM, которую я использовал, для вас правильная лицензия (или реализовать собственный NTLM).

+0

реализует только теперь устаревший samba v1 (например, совместимый с окнами xp) – bernstein

+0

Исправить. Моя задача требовала поддержки XP, потому что в банкомате еще много компьютеров XP. В противном случае я бы пошел с SMB 2, который является лучшим форматом. –

+0

Я пробовал это на macOS sierra (ориентирован на устройство iOS 10). Я попытался подключиться к локальному SMB-ресурсу, и ему не удалось выполнить ntstatus NOT_SUPPORTED, предположительно потому, что это клиент v1, а sierra SMB, вероятно, v2. Я попытался подключиться к общей доле в аэропорту (точка моего приложения), и он потерпел неудачу с ntstatus NOT_IMPLEMENTED, указывая на то, что экстремальный аэропорт ничего не поддерживает. В любом случае, из удачи. Хорошая работа над проектом smb4ios, хотя, здорово, что там есть код OSS. –

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