Шаг 3 - Получение имени хоста
Создавайте проект, как в прошлый раз только с именем WinSock2.
Ну, во-первых я вынес инициализацию и закрытие WinSock в отдельные процедуры. Общий код программы теперь выглядит так.
void StartWinSock();
void StopWinSock();
void WaitSocket();
void main()
{
StartWinSock();
WaitSocket();
StopWinSock();
}
WaitSocket создан на перспективу, то есть я буду создавать ожидающий сокет. А пока в нем только функция получения имени хоста. Вот как она выглядит
void WaitSocket()
{
char chInfo[64];
if (gethostname(chInfo,sizeof(chInfo)))
{
printf("Not local host\n");
return;
}
else
{
printf(chInfo);
printf(" GetHostName OK !!!!!\n");
}
}
Главное в этом коде функция gethostname:
int gethostname (
char FAR * name,
int namelen
);
В эту функцию передается буфер и его длина для возврата имени. При отсутствии ошибок эта функция вернет 0.
Я опробовал этот код под Windows 98, вот что я получил в ответ.
Microsoft(R) Windows 98
(C)Copyright Microsoft Corp 1981-1998.
C:\WINDOWS>d:
D:\PROJECT\ClientServer\Winsock2\Debug>winsock2
Winsock initial OK !!!!
Jana GetHostName OK !!!!!
Cleapir Good !!!!!
Jana - это у меня настроенный удаленный доступ к сети (Internet :-))
Загрузить проект | Предыдущий шаг | Следующий Шаг | Оглавление By Artem.
Используются технологии uCoz
|