Публикация

Получить IP из скрипта

Как из скрипта узнать локальный IP-адрес?

В базовую конфигурацию Terrasoft не вынесена функция получения IP адреса. Однако Вы можете получить локальный IP адрес посредством следующего кода:

var wmi = GetObject("winmgmts:!\\\\.\\root\\cimv2");
var nac=wmi.ExecQuery("Select * from Win32_NetworkAdapterConfiguration Where IPEnabled = True");
for (nac = new Enumerator(nac);!nac.atEnd(); nac.moveNext()){
var ip = (nac.item().ipAddress(0));    
}

Переменная ip и будет содержать локальный IP адрес.

Нравится

Поделиться

4 комментария

Анна, а не надо прервать цикл for после первой итерации?

Аналогично получаем имя пользователя:

var wmi = GetObject("winmgmts:!\\\\.\\root\\cimv2");
var items = wmi.ExecQuery("Select * from Win32_ComputerSystem");
for (items = new Enumerator(items); !items.atEnd(); items.moveNext()){
    var user = items.item().Username;
    break;
 }

"Alimova Anna" написал:for

"Зверев Александр" написал:for

А зачем тогда вообще делать цикл для одной итерации?

Надо будет потестить, может ли вернуться энумератор из нескольких элементов, и если так - в первом или в последнем передаётся нужная информация.

Показать все комментарии