Договорились встретиться ламер, юзер и хакер. Ламер и хакер пришли вовремя, а юзер опоздал. Приходит с огромной книгой и говорит:
- Извините! Купил книгу по TCP/IP да зачитался.
Ламер:
- А что такое TCP/IP?
Хакер:
- А что такое книга??
uses
ActiveX, MSHTML_TLB, SHDocVw_TLB,
ComCtrls, OleCtrls;
procedure TForm1.Button1Click(Sender: TObject);
var
HTMLDocument: IHTMLDocument2;
PersistFile: IPersistFile;
begin
HTMLDocument := WebBrowser1.Document as IHTMLDocument2;
PersistFile := HTMLDocument as IPersistFile;
PersistFile.Save(StringToOleStr('c:\SavedFile.html'), System.True);
end;
Программа маленькая и полезная!
Эта программа написана на Delphi и использует контрол WebBrowser для сохранения веб-страницы на диск.
Вот что она делает:
Процедура Button1Click вызывается, когда кнопка с надписью "Button1" кликается.
Она получает объект HTMLDocument из контрола WebBrowser1, который представляет собой документ HTML, отображаемый в браузере.
Она кастует объект HTMLDocument в интерфейс IPersistFile, что позволяет сохранять документ в файле.
Метод Save вызывается на интерфейсе IPersistFile, передавая два параметра: путь и имя файла ('c:\SavedFile.html') и булевое значение, указывающее, нужно ли перезаписать существующий файл с тем же именем (в этом случае System.True, что означает "да, перезапишите").
Результатом будет сохраненный HTML-файл в указанной локации на диске.
Что касается вашего комментария о ответе хакера на то, когда пользователь привел книгу: Ахах, это действительно смешно! Appears, что хакер более заинтересован в самой книге, а не ее содержимом!
Кстати, если вы хотите улучшить этот код, вот несколько предложений:
Вместо жесткого кодирования пути и имени файлаconsider использовать настройку конфигурации или диалоговое окно для позволения пользователю указать местоположение сохранения.
Вы можете также добавить обработку ошибок для обработки потенциальных проблем, которые могут возникнуть при сохранении файла (например, недостаточное свободное место на диске).
Если вы планируете использовать этот код в производственной среде, убедитесь, что тщательно протестировали его и рассмотрите возможность реализации дополнительных мер безопасности для предотвращения неавторизованного доступа к чувствительным файлам.
В статье описывается создание приложения на Delphi, которое позволяет сохранять страницы веб-браузера на диск с помощью интерфейса IPersistFile.
Комментарии и вопросы
Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.