Конференция "Сети" » IdHTTPProxyServer и tmStreaming [WinXP]
 
  • MindWork © (08.04.09 10:44) [0]
    Есть программка - банальный прокси, написана на IdHTTPProxyServer.
    У этого компонента был один недостаток: если через прокси проходил большой файл, то он сначала скачивался компонентом целиком, а затем отдавался дальше.
    В новой версии компонента, этот недостаток исправили, теперь можно выбирать tmFullDocument(качать целиком) и tmStreaming(качать и отдавать кусками) в DefaultTransferMode.

    Суть программы заключалась в том, что пропуская через себя информацию, некоторые файлы(скажем картинки > 300кб) сохранялись на диск.
    Делалось это так:
    procedure TForm1.IdHTTPProxyServer1HTTPDocument(AContext: TIdHTTPProxyServerContext;
     var VStream: TStream);
    var
        FS   :    TFileStream;
    begin
        if VStream.Size > 300000 then
        Begin
             FS := TFileStream.Create('C:\img.jpg', fmCreate);
             FS.CopyFrom(VStream, VStream.Size);
             FS.Free;
        End;

    end;


    Так вот, если выбрано tmFullDocument, то всё прекрасно работает, однако, когда я ставлю tmStreaming, то данное событие (IdHTTPProxyServer1HTTPDocument) не вызывается вовсе!

    Вопрос:
    Как сделать данную операцию(сохранение файла), в tmStreaming режиме?
  • Error202 (18.08.09 23:16) [1]
    Вы нашди ответ?
 
Конференция "Сети" » IdHTTPProxyServer и tmStreaming [WinXP]
Есть новые Нет новых   [134437   +30][b:0][p:0.001]