Как подключить сокет TCP с использованием имени хоста в локальной сети - PullRequest
3 голосов
/ 20 августа 2011

Я пытаюсь подключиться к сокету TCP на компьютере с Windows XP, используя имя компьютера с iPad.

Я пытался использовать:

getaddrinfo(hostName, 4097, &hints, &res0);

Это не удается, когда hostName = "MyHost" и успешно, когда hostName = "192.168.0.4"

Я пытался использовать AsynchSockets с теми же результатами, используя:

[mySocket connectToHost:hostName onPort:4097 error:nil];

Машины XP просто отлично подключаются, используя: Winsock.RemoteHost = "MyHost" для VB иMySocket->Connect("MyHost", 4097); для C ++

Как мне сделать что-то похожее на iPad с помощью Xcode?

Ответы [ 2 ]

1 голос
/ 20 августа 2011

Вам понадобится клиентская библиотека SMB для iOS. Вот с чего начать:

http://38leinad.wordpress.com/2011/03/23/windows-filesharing-library-for-ios/

0 голосов
/ 07 октября 2011

Если он работает с прямым IP и не работает с hostName 'MyHost' это, скорее всего, означает, что «MyHost» не разрешается (IP) на iPad. Например: есть файл с именем hosts (обычно c:\windows\system32\drivers\etc\hosts) на компьютере с XP - где имя хоста, например, MyHost, может иметь свой IP-адрес.

Строка "192.168.0.4 MyHos t" сделает именно это.

Кажется, вы не можете редактировать файл hosts на iPad без джейлбрейка: Можно ли отредактировать файл хоста iPad?

Но здесь вы можете найти способ обойти это.

...