четверг, 14 октября 2010 г.

What is my IP adress? Как узнать свой реальный IP адрес?

Для чего это вообще может быть нужно?! Область применения обширная, приведу один пример: вам необходимо подключится к удаленному рабочему столу своего домашнего компьютера, тогда второй пример именно для вас.


Первый пример
В первом примере идем по адресу http://whatismyip.org , после загрузки страницы, берем ее содержимое и записываем в файл MyIP.txt

Const ForReading = 1, ForWriting = 2, ForAppending = 8
Const TristateUseDefault = -2, TristateTrue = -1, TristateFalse = 0

Dim URl, objShell, objShellWindows

Set fso = CreateObject("Scripting.FileSystemObject")
  fso.CreateTextFile "MyIP.txt"
  Set f = fso.GetFile("MyIP.txt")
  Set ts = f.OpenAsTextStream(ForWriting, TristateTrue)

URL = "http://whatismyip.org/"

Set objIE = WScript.CreateObject("InternetExplorer.Application")
      objIE.Navigate URL
      objIE.Visible = false

While objIE.Busy
  Wscript.Sleep 1000
Wend

ts.WriteLine objIE.document.body.innerTextts.Close

objIE.Quit


Второй пример
Во втором примере идем по адресу http://whatismyip.org , после загрузки страницы, берем ее содержимое и отправляем полученный IP адрес на email.
ПРИМИЧАНИЕ: для использования второго примера нам потребуется программа Blat это маленькая (70kB) open source консольная програмулька под Windows, которая позволяет отправлять e-Mail по SMTP протоколу из командной строки.


Dim URl, WshShell, objIE, Ip

Set WshShell = WScript.CreateObject("WScript.Shell")

URL = "http://whatismyip.org/"

Set objIE = WScript.CreateObject("InternetExplorer.Application")
      objIE.Navigate URL
      objIE.Visible = false

While objIE.Busy
   Wscript.Sleep 1000
Wend

Ip = objIE.document.body.innerText

WshShell.Run "blat -serverSMTP smtp.yandex.ru -f MailОтпровитель@ya.ru -u Логин -pw Пароль -to MailПолучатель@yandex.ru -subject Ip -body " & Ip & " -log Ip.txt",0,1

objIE.Quit

Комментариев нет: