Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как c помощью WinInet закачать HTML страничку по адресу https:// [D7, WinXP]


SH@RK ©   (2005-04-28 11:22:00) 

Как закачать при помощи функций WinInet страничку HTML по адресу https://192.168.44.252/stat.php ?
Раньше эта страничка была доступна для скачивания по адресу http://192.168.44.252/stat.php:443и у меня всё

работало, но тепрерь функция HttpSendRequest возвращает False. В браузере всё грузится нормально. В обоих случаях

нужно указывать логин и пароль.

Вот "голый" код проги:

procedure myInet;
var
.....
hInet, hConnect, hRequest: HINTERNET;
begin
// инициализируем WinInet
hInet := InternetOpen(
  'IE5.5',              // app name
  INTERNET_OPEN_TYPE_PRECONFIG, // access type
  nil,                  // proxy server
  nil,                  // proxy port
  INTERNET_FLAG_SECURE);// flags

// открываем HTTP сессию
hConnect := InternetConnect(
  hInet,                        // wininet handle,
  PChar('192.168.44.252'),      // host
  443,                          // port     // HTTPS
  PChar('u4078'),               // user     // мой логин
  PChar('hgfER'),               // password // мой пароль
  INTERNET_SERVICE_HTTP,        // service
  0,                            // flags
  1);                           // context

// открываем запрос
hRequest := HttpOpenRequest(
  hConnect,                  // connect handle
  'GET',                     // request method
  '/stat.php',               // object name
  nil,                       // version
  nil,                       // referrer
  nil,                       // accept types
  INTERNET_FLAG_KEEP_CONNECTION // flags: keep-alive
  1);                        // context

// посылаем запрос
bSend := HttpSendRequest(
  hRequest,                     // request handle
  nil,                          // header string
  0,                            // header length
  nil,                          // post data
  0);                           // post length
функция HttpSendRequest возвращает False !!!


VMcL   (2005-05-01 11:24:00) [1]

>> Virus.exe ©   (01.05.05 02:55) [1]

Отличие HTTP от HTTPS заключается в том, что HTTP - это Secure HTTP. HTTPS требует аутентификации, это не просто коннект на 443 порт.


Virus.exe   (2005-05-01 02:55:00) [2]

Все никак не можешь разобраться?
Вообще я не понимаю принципиальной разницы между https и просто указанием 443-го порта.А осел понимает по всей видимости(если говоришь,что браузер все открывает спокойно)
Мой тебе совет,возьми снифер,и посмотри,чего там ослик и сервер друг другу такого рассказывают,чего твоя прога незнает.


Наверх

Титульная страница Поиск, карта сайта Написать письмо