Delphi VCL 컴포넌트 TWebBrowser를 프록시와 함께 사용하고 싶습니다. 이 일을 아주 쉽게하는 것 같습니다 :Delphi TWebBrowser - 로그인/암호와 함께 프록시를 사용하는 방법?
var PIInfo: PInternetProxyInfo;
begin
PIInfo^.dwAccessType := INTERNET_OPEN_TYPE_PROXY;
PIInfo^.lpszProxy := PAnsiChar('proxyserver.com:8888');
PIInfo^.lpszProxyBypass := PAnsiChar('');
UrlMkSetSessionOption(INTERNET_OPTION_PROXY, PIInfo, SizeOf(Internet_Proxy_Info), 0);
end;
그러나 나는 또한 인증과 함께 프록시를 사용하고 싶습니다. 그리고 여기 나는 문제가있다. INTERNET_OPTION_PROXY_USERNAME 같은 매개 변수는 같은 기능에 의해 제작되었다 인터넷 핸들에 적용 할 수와 난 후에 InternetSetOption 것을 알게
var UserName: AnsiString;
ConnectionHandle: HINTERNET;
begin
// Init ConnectionHandle here
//...
res := InternetSetOption(ConnectionHandle,
INTERNET_OPTION_PROXY_USERNAME,
UserName,
Length(UserName) + 1);
end;
: 나는 WinAPI를 함수로 InternetSetOption, 아래의 예를 사용하여 프록시 이름과 암호를 설정하는 것이 가능하다는 것을 배웠다 인터넷 연결 또는 HttpOpenRequest.
이에 대한 대답은 here입니다.
문제가되지 않습니다. 먼저 InternetConnect를 호출 할 수 있습니다. 하지만이 인터넷 핸들을 내 TWebBrowser에 연결 한 후에는 불가능한 것 같습니다. TWebBrowser는 콘크리트 전용 인터넷 핸들에 적용했기 때문에이 설정을 무시합니다.
그럼 내 질문 : 델파이 코드에서 인증을 사용하여 프록시를 설정하여 TWebBrowser에서 사용할 수 있습니까?
ps. 다른 옵션은 TWebBrowser가 로그인을 요구할 때 로그인/암호 프록시 설정을 기억하는 것입니다.하지만 로그인/암호를 여러 번 곱하여 코드에서 설정하고 싶습니다.
미리 감사드립니다.
http://microsoft.public.inetsdk.programming.webbrowser-ctl.narkive.com/rgz718KC/how-to-pass-proxy-username-password-into-webbrowser-control –
참고로, 첫 번째 코드 스 니펫은 잘못된. 아무것도 가리 키지 않은 초기화되지 않은 포인터를 선언하고 있습니다. 대신 이것을 사용해야합니다 :'var IInfo : InternetProxyInfo; IInfo.dwAccessType 시작 : = INTERNET_OPEN_TYPE_PROXY; ... UrlMkSetSessionOption (INTERNET_OPTION_PROXY, @IInfo, SizeOf (IInfo), 0); 끝, ' –
레미 르 보우, 맞아. 사실이 스 니펫에 코드를 추가하는 것을 잊어 버렸습니다 : New (PIInfo); ..... 배출 (PInfo); –