- С 25 - Ранен.
- С 26 - Ранен.
- С 27 - Файл win. com на диске С: убит!
Сначала нужно в директиве uses подключить модуль ShellAPI, чтобы мы смогли воспользоваться API-функцией SHFileOperation(). А затем уже можно использовать такой вот процедурой:
Код на языке Delphi, отправляющий файл в корзину (также известную как "Помойка" на русском). Код использует модуль ShellAPI и функцию SHFileOperation для достижения этого.
Разбивка кода:
Первая секция импортирует модуль ShellAPI, который предоставляет доступ к API Windows Shell.
Процедура SendToPomoyka принимает имя файла в качестве параметра входных данных.
Внутри процедуры объявляется переменная SHF типа TSHFileOpStruct, которая представляет собой структуру, используемую функцией SHFileOperation.
Статements with инициализирует структуру SHF следующими значениями:
Wnd: устанавливает handle окна в handle основного окна текущего приложения (Application.Handle).
wFunc: указывает операцию, которую необходимо выполнить (в этом случае FO_DELETE, что означает удаление файла).
pFrom: устанавливает имя исходного файла в параметр входных данных FileName.
fFlags: указывает дополнительные флаги для операции. В этом случае он устанавливает флаг FOF_SILENT для подавления сообщений об ошибках и флаг FOF_ALLOWUNDO для разрешения восстановления файла из корзины.
Функция SHFileOperation вызывается с инициализированной структурой SHF в качестве аргумента. Функция выполняет указанную операцию (в этом случае удаление файла) и возвращает код результата, указывающий, была ли операция успешной.
Сообщения об ошибках в оригинальном коде, вероятно, являются результатом предыдущих попыток удалить файлы "С 26" и "С 27", которые resulted in ошибки ("Ранен" means "Injured" or "Wounded" on Russian, suggesting that the files were not found or could not be deleted).
В целом, этот код предоставляет простой способ отправить файл в корзину изнутри приложения Delphi.
Статья описывает программный код на Delphi, который позволяет переместить файл в корзину с использованием API-функции SHFileOperation().
Комментарии и вопросы
Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.