PDA

Просмотр полной версии : Как программно получить IP адрес



aplotnik
07.10.2017, 22:42
Собственно вопрос содержится в теме. Поиском находил советы либо залезть в файл конфигурации, либо через системные вызовы ОС, А просто функции типа GetIPAddress есть?

Трофимов Артем
07.10.2017, 23:53
о каком контроллере Вы говорите?

aplotnik
08.10.2017, 10:59
В конкретном случае о СПК207, но для общего развития хотелось бы услышать и применительно и к другим контроллерам.

Евгений Кислов
08.10.2017, 11:24
В конкретном случае о СПК207, но для общего развития хотелось бы услышать и применительно и к другим контроллерам.

Конкретно для СПК - при использовании последних таргет-файлов (3.5.4.26) в дереве проекта будет узел Network_info, к которому можно привязать переменные - в них будут считаны IP, маска и MAC-адрес.

aplotnik
08.10.2017, 17:53
Спасибо, обновился!

Theyler
08.10.2018, 06:58
Конкретно для СПК - при использовании последних таргет-файлов (3.5.4.26) в дереве проекта будет узел Network_info, к которому можно привязать переменные - в них будут считаны IP, маска и MAC-адрес.

Евгений, справедливо ли получение MAC-адреса с помощью Network_info либо иной функцией для СПК-107?

Евгений Кислов
08.10.2018, 07:11
Евгений, справедливо ли получение MAC-адреса с помощью Network_info либо иной функцией для СПК-107?

Узла Network_Info у СПК1хх нет.
Чтобы узнать MAC-адрес, используйте библиотеку CmpSysExec для отправки команды ifconfig.
http://ftp.owen.ru/CoDeSys3/11_Documentation/01_SPK/SPK_CmpSysExec_v.1.1.pdf

Theyler
08.10.2018, 21:29
То есть, MAC в 1xx всё же есть? А то меня техподдержка вчера разочаровала его отсутствием априори..

capzap
09.10.2018, 07:51
То есть, MAC в 1xx всё же есть?

почему Вас это удивляет, всё что организует сетевой интерфейс должно иметь мак-адрес, возьмите тот же virtualbox, задавая сеть, можно и мак-адрес выставить, хотя физически другой сетевой карты нет, кроме как основного компа

Евгений Кислов
09.10.2018, 09:00
То есть, MAC в 1xx всё же есть? А то меня техподдержка вчера разочаровала его отсутствием априори..

MAC есть, но он совпадает у всех контроллеров.
Так что если вы планировали его использовать как уникальный идентификатор - то, к сожалению, не выйдет.

capzap
09.10.2018, 09:37
использовать как уникальный идентификатор - то, к сожалению, не выйдет.может мой вариант подойдет http://www.owen.ru/forum/showthread.php?t=17003&p=141820&viewfull=1#post141820

Евгений Кислов
09.10.2018, 13:56
Не подойдет - всегда вернется строка из нулей.