Russian Qt Forum
Март 28, 2024, 20:36
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Работа с сетью
>
Локальный IP
Страниц: [
1
]
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Локальный IP (Прочитано 6715 раз)
INZER
Гость
Локальный IP
«
:
Август 15, 2016, 16:13 »
Как узнать локальный IP адрес машины?
Код:
QList< QHostAddress > addresses = QHostInfo::fromName(QHostInfo::localHostName()).addresses();
Возвращает только 127.0.0.1
Хотя на eth0 поднят еще один IP....
Заранее спасибо
Записан
Old
Джедай : наставник для всех
Online
Сообщений: 4349
Re: Локальный IP
«
Ответ #1 :
Август 15, 2016, 17:33 »
QList<QHostAddress> QHostInfo::addresses() const
Записан
INZER
Гость
Re: Локальный IP
«
Ответ #2 :
Август 16, 2016, 08:38 »
Цитата: Old от Август 15, 2016, 17:33
QList<QHostAddress> QHostInfo::addresses() const
В таком случае возвращает пустой QList
PS: на Windows все хорошо
«
Последнее редактирование: Август 16, 2016, 09:20 от INZER
»
Записан
Old
Джедай : наставник для всех
Online
Сообщений: 4349
Re: Локальный IP
«
Ответ #3 :
Август 16, 2016, 10:02 »
Цитата: INZER от Август 16, 2016, 08:38
В таком случае возвращает пустой QList
Сорри, не то вставил.
QList<QNetworkInterface> QNetworkInterface::allInterfaces()
QList<QHostAddress> QNetworkInterface::allAddresses()
Записан
Vladimir
Крякер
Offline
Сообщений: 305
Re: Локальный IP
«
Ответ #4 :
Август 22, 2016, 00:03 »
Код:
void slGetListLocalIP(QStringList &listIP)
{
listIP.clear();
QList<QHostAddress> listAddr = QNetworkInterface::allAddresses();
for(int i = 0; i < listAddr.size(); i++)
{
if(listAddr.at(i).protocol() == QAbstractSocket::IPv4Protocol )
{
QString ip = listAddr.at(i).toString();
listIP.append(ip);
}
}
}
Записан
gil9red
Administrator
Джедай : наставник для всех
Offline
Сообщений: 1805
Re: Локальный IP
«
Ответ #5 :
Август 22, 2016, 08:12 »
Цитата: Vladimir от Август 22, 2016, 00:03
Код:
void slGetListLocalIP(QStringList &listIP)
{
listIP.clear();
QList<QHostAddress> listAddr = QNetworkInterface::allAddresses();
for(int i = 0; i < listAddr.size(); i++)
{
if(listAddr.at(i).protocol() == QAbstractSocket::IPv4Protocol )
{
QString ip = listAddr.at(i).toString();
listIP.append(ip);
}
}
}
Если в get-функции, тогда мне кажется лучше возвращать список, а не через ссылку в параметре заполнять
Записан
https://github.com/gil9red
https://ru.stackoverflow.com/users/201445/gil9red
Vladimir
Крякер
Offline
Сообщений: 305
Re: Локальный IP
«
Ответ #6 :
Август 23, 2016, 16:22 »
Согласен! Красивее.. но данные нужно было доставать через сигнал, подключенный к этому слоту!
Записан
gil9red
Administrator
Джедай : наставник для всех
Offline
Сообщений: 1805
Re: Локальный IP
«
Ответ #7 :
Август 23, 2016, 16:52 »
Теперь понятен префикс
sl
Записан
https://github.com/gil9red
https://ru.stackoverflow.com/users/201445/gil9red
Страниц: [
1
]
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...