Эта качалка поддерживает 3 режима: качать в файл, в строку, и push-mode. В последнем режиме возникают события DataAvailable по приходу каждого кусочка, и в событие передаётся содержимое этого кусочка.
Все три функции (DownloadToFile, DownloadToString, DownloadPush) возвращают управление по окончании загрузки.
Во всех режимах скачки возникают события Progress по мере прогресса и Complete в конце. Обработчик события Progress может прервать скачку, установив параметр Cancel в True.
Поддерживается работа через прокси-с-паролем (можно разрешить системе вывести стандартное окно, или вывести самому какое-то своё и передать системе логин-пароль), для этого нужно обрабатывать событие Authenticate.
Режим загрузки (например, запретить кеширование, или наоборот, грузить, только из кеша) можно задать в обработчике события GetOptions.
Чтобы отправить POST-запрос, установите свойство Method в BINDVERB_POST и запишите в RequestData строку запроса, например "name=tyomitch&pwd=GFY"
К кирпичу относятся файлы clsKachalka.cls и kach_tlb.tlb; остальное - демка и исходники TLB.
kach_tlb.tlb лежит вместе с исходниками в папке tlb. Это обрезанная и адаптированная версия olelib от edanmo.
При компиляции TLB встраивается в ехе-шник. Таскать её за собой не нужно. Сама эта качалка (мной) рассматривается как замена Internet Transfer Control, не требующая таскать за собой дополнительные файлы.