crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

2 страниц V  < 1 2  
Ответить в данную темуНачать новую тему
> Как получить свой внешний IP-адрес?
grio
  опции профиля:
сообщение 19.11.2009, 21:40
Сообщение #11


Студент
*

Группа: Участник
Сообщений: 87
Регистрация: 11.11.2009
Пользователь №: 1221

Спасибо сказали: 6 раз(а)




Репутация:   0  


Цитата
QUrl("www.grio.ru/myip.php").host();
QUrl("www.grio.ru/myip.php").path();

ну как то так...
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Rocky
  опции профиля:
сообщение 19.11.2009, 21:41
Сообщение #12


Старейший участник
****

Группа: Участник
Сообщений: 530
Регистрация: 22.12.2008
Из: Санкт-Петербург
Пользователь №: 463

Спасибо сказали: 22 раз(а)




Репутация:   7  


гыыы
Есть. Надо так:
m_pHttp->get("/myip.php");

Всем спасибо ))
Терь осталось на сайт фирмы написать такой вот скриптик и все :)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 19.11.2009, 21:51
Сообщение #13


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


Цитата(Rocky @ 20.11.2009, 0:41) *
Терь осталось на сайт фирмы написать такой вот скриптик и все
а может у IANA есть стандартный сервис?

наподобие http://example.com/
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Rocky
  опции профиля:
сообщение 19.11.2009, 22:08
Сообщение #14


Старейший участник
****

Группа: Участник
Сообщений: 530
Регистрация: 22.12.2008
Из: Санкт-Петербург
Пользователь №: 463

Спасибо сказали: 22 раз(а)




Репутация:   7  


Посмотрю, спасибо. Щас попробую еще таким же образом с 2ip.ru вытянуть инфу... Интересно :)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Rocky
  опции профиля:
сообщение 19.11.2009, 22:43
Сообщение #15


Старейший участник
****

Группа: Участник
Сообщений: 530
Регистрация: 22.12.2008
Из: Санкт-Петербург
Пользователь №: 463

Спасибо сказали: 22 раз(а)




Репутация:   7  


Вобщем, если кому нужно будет:
CDifferentSettingsDialog::CDifferentSettingsDialog(...)
{
...
    m_pHttp = new QHttp();
    QDialog::connect(m_pHttp, SIGNAL(done(bool)), this, SLOT(OnReadyRead()));
    m_pHttp->setHost("2ip.ru");
    m_pHttp->get("/index.php");
...
}
void CDifferentSettingsDialog::OnReadyRead()
{
    m_sCurrentDynIP = "";

    const QString sText = m_pHttp->readAll();
    const QRegExp oRegExp("((1{0,1}[0-9]{0,2}|2[0-4]{1,1}[0-9]{1,1}|25[0-5]{1,1})\\.){3,3}(1{0,1}[0-9]{0,2}|2[0-4]{1,1}[0-9]{1,1}|25[0-5]{1,1})");
    
    const int n = sText.indexOf(oRegExp);
    if (n == -1) return;

    m_sCurrentDynIP = sText.mid(n, 15);        //255.255.255.255
    const int nLength = m_sCurrentDynIP.length();
    for (int i = 0; i < nLength; ++i)
    {
        const QChar sSymbol = m_sCurrentDynIP.at(i);
        if (sSymbol.isDigit() || sSymbol == '.') continue;
        m_sCurrentDynIP.replace(i, 1, " ");
    }

    m_sCurrentDynIP = m_sCurrentDynIP.trimmed();
}


Сообщение отредактировал Rocky - 19.11.2009, 22:45
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
bigory
  опции профиля:
сообщение 16.10.2010, 19:59
Сообщение #16


Студент
*

Группа: Участник
Сообщений: 77
Регистрация: 10.10.2010
Пользователь №: 2099

Спасибо сказали: 0 раз(а)




Репутация:   0  


m_sCurrentDynIP что за переменная?
Как мне ее передать в Label?
Причина редактирования: удалил дубль
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Алексей1153
  опции профиля:
сообщение 16.10.2010, 20:08
Сообщение #17


фрилансер
******

Группа: Участник
Сообщений: 2941
Регистрация: 19.6.2010
Из: Обливион
Пользователь №: 1822

Спасибо сказали: 215 раз(а)




Репутация:   34  


bigory, строка, скорее всего (QString)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kwisp
  опции профиля:
сообщение 18.10.2010, 9:53
Сообщение #18


астарожна ынтжинэр
*****

Группа: Участник
Сообщений: 1404
Регистрация: 26.11.2008
Из: ТаганрогРодинаЧехова
Пользователь №: 435

Спасибо сказали: 113 раз(а)




Репутация:   23  


Rocky,
мне вот этот кусок не понятен ((
Цитата(Rocky @ 19.11.2009, 23:43) *
m_sCurrentDynIP = sText.mid(n, 15);        //255.255.255.255     
const int nLength = m_sCurrentDynIP.length();    
for (int i = 0; i < nLength; ++i)    
{        
const QChar sSymbol = m_sCurrentDynIP.at(i);        
if (sSymbol.isDigit() || sSymbol == '.') continue;        
m_sCurrentDynIP.replace(i, 1, " ");    
}    
m_sCurrentDynIP = m_sCurrentDynIP.trimmed();


m_sCurrentDynIP = sText.mid(n, 15);        //255.255.255.255     
const int nLength = m_sCurrentDynIP.length();

разве тут не очевидно, что nLength == 15 ?

назначение цикла вообще не пойму.

П.С.
ну и oRegExp не уж то по короче сделать никак?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Sokoloff
  опции профиля:
сообщение 21.10.2010, 14:33
Сообщение #19


Участник
**

Группа: Участник
Сообщений: 237
Регистрация: 1.4.2009
Из: Москва
Пользователь №: 654

Спасибо сказали: 50 раз(а)




Репутация:   11  


Цитата(Rocky @ 19.11.2009, 20:47) *
есть мой комп, он подключен через комуникатор к роутеру который в свою очередь смотрит на свич провайдера, т.е. в интеренет по сути... Т.е. грубо говоря есть роутер, который скрывает небольшую локальную сеть...

Я пока только тестами занимаюсь.. Просто хочу в программу (по работе) встроить модуль, который бы слал мне на почту ip-адрес машины, с которой запущен... Нужно не для хака, а чтобы удаленно просматривать логи программы...

Может тебе нужен DynDNS или его аналоги?
А как планируешь проскочить через NAT, порты пробросишь?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

2 страниц V  < 1 2
Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 27.11.2024, 7:05