Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   [решено] Как определить IP и записать его в переменную? (OS: Windows Vista) (http://forum.oszone.net/showthread.php?t=140814)

Voshal 22-05-2009 18:49 1125161

Как определить IP и записать его в переменную? (OS: Windows Vista)
 
Приветствую всех! Как можно сделать, чтобы при запуске .bat файла, он определял IP и записывал его в переменную? Операционная система: Windows Vista.

Делал такое для Windows XP, всё работает, только не работает в сборках Zver и FuckYouBill. Делал таким способом:

Код:

for /F "tokens=2 delims=:" %%i in ('ipconfig  ^| findstr "IP-"') do @SET prov=%%i
Подскажите пожалуйста. Заранее благодарю.

El Sanchez 22-05-2009 20:51 1125221

Попробуйте так
Код:

for /f "tokens=2* delims== " %%a in ('netsh diag show ip net*') do @set prov=%%a
P.S. IMHO, если сборка не сделана тобой самим, с полным контролем того,чего ты в ней меняешь, то все иное от лукавого :)

Voshal 22-05-2009 22:20 1125289

Спасибо, но выводит локальный IP адрес, а мне нужно ip инета.
А на Windows Vista выводит following

El Sanchez 23-05-2009 14:49 1125689

Я так понял нужно получить внешний ip. Тогда пробуйте так:
Код:

@echo off
echo Set oHTML = CreateObject("MSXML2.XMLhttp")>"%~dp0getip.vbs"
echo oHTML.Open "GET", "http://www.whatismyip.com/automation/n09230945.asp", False>>"%~dp0getip.vbs"
echo oHTML.Send>>"%~dp0getip.vbs"
echo sText = oHTML.ResponseText>>"%~dp0getip.vbs"
echo WScript.Echo ^"^" ^& sText>>"%~dp0getip.vbs"
echo Set oHTML = Nothing>>"%~dp0getip.vbs"
echo WScript.Quit>>"%~dp0getip.vbs"
for /f %%a in ('%windir%\system32\cscript.exe //nologo "%~dp0getip.vbs"') do set prov=%%a
del /f /q "%~dp0getip.vbs" 1>nul 2>&1

P.S. На Висте не проверял, нет у меня ее.

Voshal 23-05-2009 16:02 1125724

Вы правильно поняли, а можно сделать, чтобы было определение внешнего IP адреса, только не соединяясь со сторонними сайтами? Какими-то стандартными внутренними методами. Или на крайний случай соединяться со своим сайтом.

Busla 24-05-2009 22:15 1126643

Voshal, конечно нельзя - внешний IP принадлежит другому компьютеру и вообще никак не виден "изнутри"

gromex 16-05-2010 23:18 1414792

Подниму тему, вопрос фактически тот же что и у создателя темы, только с той лишь разницей, что решение надо в windows 7 и ип я хочу брать с интерфейса "bro":

Код:

for /f "tokens=2* delims== " %%A in ('netsh diag show ip bro*') do (set A=%%A)
Дело в том, что в 7ке у netsh нету прямого контекста diag, из-за чего ком. строка ругаеццо на отсутствие команды..
Как мне записать ip "bro" в %%A ?

Petya V4sechkin 17-05-2010 11:43 1415029

gromex, воспользуйтесь фильтрами по названию темы по ip.



Результат


Время: 04:08.

Время: 04:08.
© OSzone.net 2001-