Connecting Sparkle client via proxy servers

You can use the following code (FClient if object of class THttpClient):


uses
  {…}, Sparkle.WinHttp.Engine, Sparkle.WinHttp.Api;




  TWinHttpEngine(FClient.Engine).BeforeWinHttpSendRequest :=
    procedure(Handle: HINTERNET)
    begin
      WinHttpCheck(WinHttpSetOption(Handle, WINHTTP_OPTION_PROXY_USERNAME, PWideChar(UserName), Length(UserName));
      WinHttpCheck(WinHttpSetOption(Handle, WINHTTP_OPTION_PROXY_PASSWORD, PWideChar(Password), Length(Password));
    end;