0 / 0 / 0
Регистрация: 04.06.2019
Сообщений: 14

Получение внешнего IP в переменную

04.06.2019, 20:49. Показов 2023. Ответов 8

Студворк — интернет-сервис помощи студентам
Добрый день, есть этот код:

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
Option Explicit
'On Error Resume Next
 
Dim sIP
 
Sub XMLRequest(sQuery, objRemXML)
    Set objRemXML = CreateObject("Microsoft.XMLDOM")
    objRemXML.async = False
    objRemXML.Load (sQuery)
End Sub
 
 
Sub XMLParse(objRemXML, sNode, sRet)
    Dim objXMLret
    Set objXMLret = objRemXML.SelectSingleNode(sNode)
    If Err.Number <> 0 Then
        'MsgBox "Error of IPRange"
      Else
        If Not objXMLret Is Nothing Then sRet = objXMLret.Text
    End If
End Sub
 
 
Sub GetMyIP(sIP)
    Dim sQuery, objRemXML
 
    sQuery = "http://ip2country.sourceforge.net/ip2c.php?format=XML"
    Call XMLRequest(sQuery, objRemXML)
 
    'Get your IP-address
    Call XMLParse(objRemXML, "/lookup/ip", sIP)
    
    'if Sourceforge is Down
    If Len(sIP) = 0 Then
        Set objRemXML = Nothing
        
        sQuery = "http://wtfismyip.com/xml"
        Call XMLRequest(sQuery, objRemXML)
        
        Call XMLParse(objRemXML, "/wtf/your-fucking-ip-address", sIP) ':)
    End If
    
    Set objRemXML = Nothing
End Sub
 
'Here we go
Call GetMyIP(sIP)
 
WScript.Echo sIP
Подскажите пожалуйста, почему он срабатывает только 1 раз, возвращает IP, потом возвращает "Echo off"...?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
04.06.2019, 20:49
Ответы с готовыми решениями:

Получение внешнего IP
Необходимо получить внениий IP - с этом собственно проблем нет, а вот отправить коректный https запроос не получается. собственно как...

Получение внешнего IP
Добрый вечер! Необходимо получить внешний IP адрес и записать в *.txt. Нарыл код, ну та как в C# только первые дни... Прошу помощи...

Получение внешнего IP-адреса
zyxel keentric giga 2 ТП Zyxel говрит что можно общаться с роутером только или чрез web-интерфейс или по telnet как то вот так: ...

8
es geht mir gut
 Аватар для SoftIce
11274 / 4760 / 1183
Регистрация: 27.07.2011
Сообщений: 11,439
04.06.2019, 21:05
Цитата Сообщение от dmitrii99 Посмотреть сообщение
wtf/your-fucking-ip-address
Это прикол, или такой нод действительно есть ?
0
0 / 0 / 0
Регистрация: 04.06.2019
Сообщений: 14
04.06.2019, 21:11  [ТС]
Есть=)
0
6998 / 2883 / 1109
Регистрация: 06.06.2017
Сообщений: 9,780
05.06.2019, 10:17
dmitrii99, зачем вам эти сложности?
Visual Basic
1
2
3
4
5
With CreateObject("Msxml2.XMLHTTP")
    .Open "GET", "http://ipv4.internet.yandex.net/internet/api/v0/ip", False
    .Send 0: IP = Replace(.ResponseText, """", ""): .Abort
End With
WSH.Echo IP
Visual Basic
1
2
3
4
With CreateObject("Msxml2.XMLHTTP")
    .Open "GET", "http://ip-address.ru/show", False: .Send 0: IP = .ResponseText: .Abort
End With
WSH.Echo IP
0
0 / 0 / 0
Регистрация: 04.06.2019
Сообщений: 14
05.06.2019, 16:17  [ТС]
Спасибо, отлично работает!
0
0 / 0 / 0
Регистрация: 27.07.2014
Сообщений: 50
06.06.2019, 13:05
FlasherX, а локальный как узнать?
0
6998 / 2883 / 1109
Регистрация: 06.06.2017
Сообщений: 9,780
06.06.2019, 14:35
929151, вместо последней строки, если буфер не нужен:
Visual Basic
1
MsgBox MyIP, 64, "      Мои текущие IP"
Ещё стоит в 12 строке после последнего IP , vbLf дописать.
1
0 / 0 / 0
Регистрация: 04.06.2019
Сообщений: 14
12.06.2019, 17:17  [ТС]
Добрый день, собрал, в итоге, скрипт, который получает IP, записывает в переменную, далее он проверяется его на повторяемость, т.е. открывает файл с уже имеющимися IP, читает их и потом сравнивает текущий с уже имеющимися, если IP повторяется, то выскакивает окно с этим IP - задумка была такая, но есть 1 "но", тут скрипт читает файл и в переменную возвращает ПОСЛЕДНИЙ IP из столбца файла

Visual Basic
1
2
3
4
Set ReaIP = SFS.OpenTextFile (fullway, 1, true)
Do Until ReaIP.AtEndOfStream
HistIP = ReaIP.ReadLine
loop
, а мне нужно, что бы это окно выскакивало когда находится первое совпадение IP из файла с IP текущим.

Я понимаю, что в скрипте написано именно то, что он и выполняет, а как преобразовать его таким образом, чтобы он выполнял то, что нужно?
Заранее благодарен!

Сам скрипт:
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Set SFS = CreateObject("Scripting.FileSystemObject")
Set Shell = wscript.createObject("wscript.shell")
fullway = SFS.GetAbsolutePathName("IPv4_DataBase.txt")
 
With CreateObject("Msxml2.XMLHTTP")
.Open "GET", "http://ip-address.ru/show", False
.Send 0: IpName = Replace(.ResponseText, """", ""): .Abort
End With
 
Set ReaIP = SFS.OpenTextFile (fullway, 1, true)
Do Until ReaIP.AtEndOfStream
HistIP = ReaIP.ReadLine
loop
 
if IpName = HistIP then     
wscript.echo IpName
else
end if
0
6998 / 2883 / 1109
Регистрация: 06.06.2017
Сообщений: 9,780
12.06.2019, 17:37
В этом коде это реализовано в 6-9,11,13-16 строках.

В 7 строке вы опять избыточно используете Replace для второго адреса, который касается только первого кода с яндекс-адресом, где более быстрый пинг.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
12.06.2019, 17:37
Помогаю со студенческими работами здесь

Получение локального и внешнего IP-адресов
Давайте обсудим разные способы: встроенными командами VBS сторонними утилитами.

Получение макета внешнего отчета
Если отчет в составе конф-ии, то получение макета: Макет=Отчеты.Отчет1.ПолучитьМакет(&quot;Макет&quot;); А если отчет внешний, то как...

Получение Json с внешнего сайта
Нужно получить файл JSon с другого сайта Вот отсюда, посмотрите на него(желательно) ...

Получение значения св-ва из внешнего css-файла. ???
Кусок css-файла : Как на javascript получить, например, св-во height в переменную? Не могу в синтаксисе разобраться, там...

Запуск внешнего IE и получение кода страницы
Как на Delphi открыть внешний браузер Internet Explorer, дождаться загрузки страницы, вывести исходный код страницы (HTML) в memo и закрыть...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

Новые блоги и статьи
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru