Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Цитата NoIZz:
мне нужен первый ip приоритетного интерфейса »
Что есть «интерфейс», и по каким признакам Вы определяете, что он «приоритетный»?

Цитата NoIZz:
и что бы работало на 7, vista и xp »
Тогда Вам лучше использовать консольный скрипт WSH, наподобие:
читать дальше »
Код: Выделить весь код
Option Explicit

Dim strComputer

Dim objSWbemLocator
Dim objSWbemServicesEx
Dim objSWbemObjectEx

Dim strIPAddress


strComputer = "."

Set objSWbemLocator    = WScript.CreateObject("WbemScripting.SWbemLocator")
Set objSWbemServicesEx = objSWbemLocator.ConnectServer(strComputer, "root\cimv2")

For Each objSWbemObjectEx In objSWbemServicesEx.ExecQuery("SELECT IPAddress FROM Win32_NetworkAdapterConfiguration Where IPEnabled = 'True'")
	For Each strIPAddress In objSWbemObjectEx.IPAddress
		WScript.Echo strIPAddress
		
		Exit For
	Next

	Exit For
Next

Set objSWbemServicesEx = Nothing
Set objSWbemLocator    = Nothing

WScript.Quit 0

— первый встретившийся адрес на первом из включённых адаптеров, в виде:
читать дальше »
Код: Выделить весь код
@echo off
setlocal enableextensions enabledelayedexpansion

for /f "usebackq delims=" %%i in (
	`2^>nul cscript.exe //nologo "0001.vbs"`
) do set sIPAddress=%%~i

if defined sIPAddress echo IP Address: [%sIPAddress%]

endlocal
exit /b 0

Хотя, на мог взгляд, проще всё целиком сделать на WSH.

Отправлено: 18:56, 15-10-2013 | #4