Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Сети";
Текущий архив: 2006.01.29;
Скачать: [xml.tar.bz2];

Вниз

WinInet http auth   Найти похожие ветки 

 
Aven_   (2005-10-20 14:49) [0]

как ввести пароль в стандартную форуму HTTP AUTH?

делаю так:
hConnect := InternetConnect(hInet, "127.0.0.1", INTERNET_DEFAULT_HTTPS_PORT, "имя", "пароль", INTERNET_SERVICE_HTTP, 0, 0);

но это не прокатывает. как подругому это можно реализовать?


 
isasa ©   (2005-10-20 16:01) [1]

А так?

var
   login : string;
   pass : string;
...
  login :="xxxxx";
  pass :="xxxxx";
...
hURL:=InternetConnect(hInet, PChar(sServ), INTERNET_DEFAULT_HTTPS_PORT,
         Pchar(login), PChar(pass), INTERNET_SERVICE_HTTP, 0, 0);
...


 
Aven_   (2005-10-20 16:41) [2]

некатит, да и разницы никакой нетут :)
выдает ошибку: ERROR_INTERNET_INVALID_CA

Если зайти на сервер через TWebBrowse и залогинется в окошке что он выдаст, то через WinInet страничка нормально получается. Так вот как реализовать ввод пароля? Или автоматизировать TWebBrowser чтобы он окно не выдавал а можно было самому ввести пароль без диалога.


 
Aven_   (2005-10-20 21:59) [3]

ХЭЭЭЭЛП МИ!!!!


 
seeker ©   (2005-10-21 09:28) [4]

приблизительно так:

hConnect := InternetConnect(hI, aURLc2.lpSzHostName,
               aURLc2.nPort, aURLc2.lpszUserName, aURLc2.lpszPassword,
              INTERNET_SERVICE_HTTP, 0, 0);
...
if aURLc2.nPort = 443 then
     dwflags := INTERNET_FLAG_SECURE or  INTERNET_FLAG_IGNORE_CERT_CN_INVALID or INTERNET_FLAG_IGNORE_CERT_DATE_INVALID
   else
     dwflags := 0;

   dwFlags := dwFlags or INTERNET_FLAG_RELOAD;
...

   hFile := HTTPOpenRequest(hConnect, PChar(RequestMethod),
   aURLc2.lpSzUrlPath, HTTP_VERSION, nil, nil, dwflags, 0);
...
   if not HTTPSendRequest(hFile, pchar(extraHeaders), length(extraHeaders), aURLc2.lpSzExtraInfo, aURLc2.dwExtraInfoLength) then begin
     dwError := getlasterror;
     if dwError = 12045 then begin
       //try again if Certificate is invalid
       InternetQueryOption (hFile, INTERNET_OPTION_SECURITY_FLAGS,  @dwFlags, lpdwBufferLength);
       dwFlags := dwFlags or SECURITY_FLAG_IGNORE_UNKNOWN_CA;
       InternetSetOption (hFile, INTERNET_OPTION_SECURITY_FLAGS, @dwFlags, sizeof (dwFlags) );
       if not HTTPSendRequest(hFile, pchar(extraHeaders), length(extraHeaders), aURLc2.lpSzExtraInfo, aURLc2.dwExtraInfoLength)
       then dwError := getlasterror;
     end;
   end;

может где-то ошибся тк выдирал из работающего кода из блокнота(делфя щас не установленна).


 
isasa ©   (2005-10-21 10:58) [5]

Меня терзают сомнения. А вот это делаем?

hInet:=InternetOpen(PChar(Application.ExeName), INTERNET_OPEN_TYPE_PRECONFIG, nil, nil, INTERNET_FLAG_DONT_CACHE);


 
Aven_   (2005-10-21 16:10) [6]

isasa естественно :)

seeker спасибо! Нужно было всего лишь еще раз HTTPSendRequest сделать :)



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

Форум: "Сети";
Текущий архив: 2006.01.29;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.035 c
3-1132910006
Ольга
2005-11-25 12:13
2006.01.29
Преобразование даты (T-SQL)


15-1136312918
PARUS
2006-01-03 21:28
2006.01.29
Взорвался блок питания!


15-1136501920
Profi
2006-01-06 01:58
2006.01.29
Вопрос к Piter у


15-1136839206
Kerk
2006-01-09 23:40
2006.01.29
Баян :)


2-1136911291
HITMAN1
2006-01-10 19:41
2006.01.29
Где можно найти информацию о значениях портов





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский