Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.04.23;
Скачать: CL | DM;

Вниз

WinInet_Proxy   Найти похожие ветки 

 
iDL   (2006-04-03 22:25) [0]

Задача: есть прокси 192.168.0.1 User=DL Pass=12345, мне надо скачать файл по заданной ссылке.

Как с помощью wininet пройти авторизацию на прокси (имя и пароль)

как только не пробывал не получается ... скачивается страничка, что авторизация не пройдена, helppp.


 
isasa ©   (2006-04-04 10:46) [1]

Как вариант

Header Wininet.h

HINTERNET InternetOpen(
   IN LPCTSTR lpszAgent,
   IN DWORD dwAccessType,
   IN LPCTSTR lpszProxyName,
   IN LPCTSTR lpszProxyBypass,
   IN DWORD dwFlags
);

dwAccessType = INTERNET_OPEN_TYPE_PRECONFIG;
Retrieves the proxy or direct configuration from the registry.

А вот в реестре(опции IE) настраиваем подключение к прокси с авторизацией.


 
iDL   (2006-04-04 15:20) [2]

мне надо именно чтоб в программе пароль и имя пользователя забивалось ...


  hSession := InternetOpen("Microsoft Internet Explorer 7.0", INTERNET_OPEN_TYPE_PROXY,"192.168.0.245:8080",nil, 0);
  UserName:="12345";
  Password:="12345";
  Host:="home.earthlink.net";
  URL :="/~akonshin/files/IdeSN.zip";
  hConnect:= InternetConnect(hSession, Host, INTERNET_INVALID_PORT_NUMBER, nil, nil, INTERNET_SERVICE_HTTP, INTERNET_FLAG_KEEP_CONNECTION,0);

  hRequest:= HttpOpenRequest(hConnect,"GET",URL,nil,nil,nil,INTERNET_FLAG_KEEP_CONNECTION,0);

  HttpSendRequest(hRequest, nil, 0, nil, 0);

  InternetSetOption(hRequest,INTERNET_OPTION_PROXY_USERNAME, UserName, Length(UserName));

  InternetSetOption(hRequest,INTERNET_OPTION_PROXY_PASSWORD, Password, Length(Password));


может подскажите где не так ?
чем отличается INTERNET_OPTION_PROXY_PASSWORD от INTERNET_OPTION_PASSWORD


 
isasa ©   (2006-04-05 08:22) [3]

В этом случае должно быть две пары(логин, пароль) - один на подкльчение к прокси, второй на подключение к узлу. Это разные вещи.


 
isasa ©   (2006-04-05 08:26) [4]

+ Еще, сначала  HttpSendRequest(..., а потом устанавливаем опции?
Может наоборот?


 
isasa ©   (2006-04-05 10:59) [5]

:) Пришел на работу, заглянул в MSDN

This function sets an Internet option on the specified handle.

BOOL WINAPI InternetSetOption(
 HINTERNET hInternet,
 DWORD dwOption,
 LPVOID lpBuffer,
 DWORD dwBufferLength
);
Parameters
hInternet
[in] Internet handle on which to set information.

Т.е в данном случае

hSession := InternetOpen("Microsoft Internet Explorer 7.0", INTERNET_OPEN_TYPE_PROXY,"192.168.0.245:8080",nil, 0);

...

 InternetSetOption(hSession , INTERNET_OPTION_PROXY_USERNAME, ...
 InternetSetOption(hSession , INTERNET_OPTION_PROXY_PASSWORD, ...
...
 hConnect:= InternetConnect(hSession,...
...
 hRequest:= HttpOpenRequest(hConnect,...
...
 HttpSendRequest(hRequest,...
...


 
iDL   (2006-04-05 15:47) [6]

попробывал ... GetLastError, после
InternetSetOption(hSession , INTERNET_OPTION_PROXY_PASSWORD, ...

выдает 12018=ERROR_INTERNET_INCORRECT_HANDLE_TYPE
т.е. ругается на hSession, если авторизация стоит по MAC, то файл качается нормально ... :"(



Страницы: 1 вся ветка

Текущий архив: 2006.04.23;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.052 c
3-1140869588
ViktorZ
2006-02-25 15:13
2006.04.23
Засунуть все в одну таблицу:


3-1140192249
DSKalugin
2006-02-17 19:04
2006.04.23
Знатокам VFP 8 (Дешифрация данных)


15-1143789835
vagra
2006-03-31 11:23
2006.04.23
Знатокам: В какую гос. структуру жаловаться?


2-1144395175
pavlov
2006-04-07 11:32
2006.04.23
макросы


2-1144568610
alk2
2006-04-09 11:43
2006.04.23
Настройки Internet Explorer