Как да използвате WinInet да мине през прокси сървър.
Курсорът на употребите WinINet;
CTRL + ENTER
CTRL + F + "Proxy" + F3
не оригинал, а не умен
кода си работи по комутируема
и не работи на прокси
Това, което не разбирам
така искането на код
така че трябва да пълномощник или Чо?
Въпреки, че това не е умен, а не оригинал, но все още е отворена WinIntet.pas и е установено, че
функция InternetOpen (lpszAgent: PChar; dwAccessType: DWORD;
lpszProxy, lpszProxyBypass: PChar; dwFlags: DWORD): HINTERNET; stdcall;
тук се ukazvaetsya прокси сървър (ПР в частност)
Тази опция lpszProxy, но когато тя е определена от порт, потребителско име и парола за lpszProxy?
Rise на седем (7) линии в горните файлове WinIntet.pas
Добре, тогава номера на реда каже дали
Пристанището е писано в lpszProxyBypass.
И това е възможно и нищо не е пропуснато. Всички параметри, ще вземат от настройките на Internet Explorer
И как да се мине през прокси използване IdHTTP?
ConnectionSettings - моята структура магазини параметрите на връзката
ако ConnectionSettings.UseProxy след това
започвам
ProxyParams.ProxyServer: = ConnectionSettings.ProxyServer;
ProxyParams.ProxyPort: = ConnectionSettings.ProxyPort;
ако ConnectionSettings.UseProxyLogin след това
започвам
ProxyParams.BasicAuthentication: = True;
ProxyParams.ProxyUsername: = ConnectionSettings.ProxyUserName;
ProxyParams.ProxyPassword: = ConnectionSettings.ProxyPassword;
приключи;
приключи;
Във всеки случай, първият параметър може да бъде принудена да предприеме всички настройки от IE
Е, това не излиза! палачинка
hSession: = InternetOpen (PChar (sAppName), INTERNET_OPEN_TYPE_PRECONFIG, нула, нула, 0);
хвърлят: = InternetOpenURL (hSession, PChar (fileURL), нула, 0,0,0);
и след това в една линия
InternetReadFile (хвърлят, @Buffer, SizeOf (буфер), BufferLen);
BlockWrite (всички отворени файлове, буфер, BufferLen);
(Копирани правилно) WinInet.
Памет: 0.75 MB
Време: 0,037 гр