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

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - [решено] Скрипт определения внешнего IP

Ответить
Настройки темы
VBS/WSH/JS - [решено] Скрипт определения внешнего IP

Аватара для stolyar

Ветеран


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


Конфигурация

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


Приветствую всех!

Помогите написать скрипт, который бы выводил на экран мой внешний IP-адрес.
Заранее спасибо!

-------
Кофе или чай, в кружку накачай.


Отправлено: 19:00, 22-12-2009

 

Аватара для El Sanchez

Ветеран


Contributor


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

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


На WSH:
Код: Выделить весь код
Set oHTML = CreateObject("MSXML2.XMLhttp")
oHTML.Open "GET", "http://www.whatismyip.com/automation/n09230945.asp", False
oHTML.Send
WScript.Echo "" & oHTML.ResponseText
Это сообщение посчитали полезным следующие участники:

Отправлено: 20:22, 22-12-2009 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для stolyar

Ветеран


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

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


СеньQ! То что надо!

-------
Кофе или чай, в кружку накачай.


Отправлено: 20:26, 22-12-2009 | #3


Аватара для Freem

Старожил


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

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


El Sanchez, хотелось бы тоже самое, но без вывода на экран, а просто копировалось в буфер. Или хотя бы, чтобы из окна вывода можно было выделить и скопировать.

Последний раз редактировалось Freem, 09-07-2010 в 14:33.


Отправлено: 14:16, 09-07-2010 | #4


Пользователь


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

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


Freem,

Сохрани этот как ip_to_clip.vbs и запусти из cmd следующим образом
Код: Выделить весь код
cscript //nologo "путь к файлу\ip_to_clip.vbs"| CLIP
вот тебе "rightclick to paste" ...
Это сообщение посчитали полезным следующие участники:

Отправлено: 16:44, 09-07-2010 | #5


Аватара для El Sanchez

Ветеран


Contributor


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

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


Freem,
Код: Выделить весь код
On Error Resume Next
Set oHTML = CreateObject("MSXML2.XMLhttp")
oHTML.Open "GET", "http://www.whatismyip.com/automation/n09230945.asp", False
oHTML.Send
If Err.Number Then
	Wscript.Echo "Ошибка определения IP-адреса!"
	WScript.Quit(1)
End If
Set oIE=CreateObject("InternetExplorer.Application")
oIE.Navigate "about:blank"
Do Until oIE.Readystate=4: WScript.Sleep 1: Loop
oIE.Document.Parentwindow.ClipboardData.SetData "Text", oHTML.ResponseText
MsgBox oHTML.ResponseText, 0, "Содержимое буфера"
Это сообщение посчитали полезным следующие участники:

Отправлено: 17:10, 09-07-2010 | #6


Аватара для Freem

Старожил


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

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


El Sanchez, Всё хорошо, только IE ругается (не хочу настраивать):
Да и MsgBox oHTML.ResponseText, 0, "Содержимое буфера" - излишне. Мне бы сразу в буфер, без вывода сообщений.

Последний раз редактировалось Freem, 11-07-2010 в 20:29.


Отправлено: 00:17, 10-07-2010 | #7


Аватара для El Sanchez

Ветеран


Contributor


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

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


Freem, лады
Код: Выделить весь код
On Error Resume Next

Const sRoot = "HKCU"
Const sKey = "Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\3\1407"
Const sValueName= &H0

Set oHTML = CreateObject("MSXML2.XMLhttp")
oHTML.Open "GET", "http://www.whatismyip.com/automation/n09230945.asp", False
oHTML.Send
If Err.Number Then
	Wscript.Echo "Ошибка определения IP-адреса!"'
	WScript.Quit(1)
End If
Set oShell = WScript.CreateObject("WScript.Shell")  
sCurrentKey =  oShell.RegRead(sRoot & "\" & sKey)
If Not sCurrentKey = sValueName Then
	sBkpKey = sCurrentKey
	oShell.RegWrite sRoot & "\" & sKey, sValueName, "REG_DWORD"
End If
Set oIE=CreateObject("InternetExplorer.Application")
oIE.Navigate "about:blank"
Do Until oIE.Readystate=4: WScript.Sleep 1: Loop
oIE.Document.ParentWindow.ClipboardData.SetData "Text", oHTML.ResponseText
If sBkpKey <> "" Then oShell.RegWrite sRoot & "\" & sKey, sBkpKey, "REG_DWORD"
Это сообщение посчитали полезным следующие участники:

Отправлено: 11:01, 10-07-2010 | #8


Пользователь


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

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


Freem, можно и без заморочек с OLE Parent и CLIP в InternetExplorer и с реестром...

сразу используя "DOM"(способ позволяет выловить нужную инфу из html)
Код: Выделить весь код
Set objIE = CreateObject("InternetExplorer.Application")
Set WshShell = CreateObject("WScript.Shell")
     objIE.Visible = False
     objIE.Navigate "http://2ip.ru"
Do Until objIE.Readystate=4: WScript.Sleep 1: Loop
For Each tag In objIE.Document.getElementsByTagName("big")
    Strinfo = tag.innerHTML
Next
WshShell.Run "cmd /k Echo " & strinfo & " | CLIP", 0
objIE.Quit

или используя "MSXML2.XML" на "ответку"
Код: Выделить весь код
Set oHTML = CreateObject("MSXML2.XMLhttp")
    oHTML.Open "GET", "http://www.whatismyip.com/automation/n09230945.asp", False
    oHTML.Send

Set WshShell = CreateObject("WScript.Shell")
    WshShell.Run "cmd /k Echo " & oHTML.ResponseText & " | CLIP", 0

Последний раз редактировалось deepred, 10-07-2010 в 14:09. Причина: уточнение

Это сообщение посчитали полезным следующие участники:

Отправлено: 12:47, 10-07-2010 | #9


Новый участник


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

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


а можно сделать чтоб Ip еще отсылался каждый час на email, заранее благодарен )

Отправлено: 12:09, 21-09-2010 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - [решено] Скрипт определения внешнего IP

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Любой язык - Скрипт Visual Basic для определения IP в Windows 7 и XP Hitsi Скриптовые языки администрирования Windows 8 20-02-2010 23:23
Сайт на двух языках (php-скрипт для определения языка) vitalyhan Вебмастеру 2 22-11-2009 15:36
Подбор - [решено] Программа для определения версии Windows akalibr Лицензирование продуктов Microsoft 3 27-05-2009 09:12
[решено] Проблема определения дисковых накопителей на Windows 2003 SP1 EE kisslin Microsoft Windows NT/2000/2003 26 16-05-2008 11:31
Интернет - [решено] Команда в консоли для определения состояния портов Berkyt Microsoft Windows 2000/XP 4 22-12-2007 15:30




 
Переход