![]() |
|
Модераторы: Snowy, bartram, MetalFan, bems, Poseidon, Riply |
![]()
|
|
| Antony41 |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 332 Регистрация: 27.12.2008 Репутация: нет Всего: 1 |
В общем проблема следующая:
После долгого и упорного мучения, я нашёл информацию, для работы с корзиной. 1. Я не нашёл ни исходного кода ни статьи как восстанавливать файлы из корзины списком, 2. В общем первая еще куда ни шло, но для некоторых файлов, стоит атрибут только чтение, и при их восстановлении, появляется окно с запросом типа вы действительно собираетесь переместить доступный только для чтения файл..., необходимо установить параметр который отвечает "Да для всех" на все вопросы. Что то вроде FOF_NOCONFIRMATION, при удалении файла в корзину. 3. Можно попробовать снять атрибуты файла до восстановления, и уставить обратно после восстановления. От сюда и вопрос куда копать к атрибутам в корзине? (Возможно это и невозможно, так как в окне свойства файла, когда он в корзине менять атрибуты нельзя). копал вот что раскопал: в модуле ShlObj.pas есть строки
Еще есть вот что: источник: http://www.codeproject.com/KB/shell/recyclebin.aspx
По моему там говорится как отловить сообщение експлорера, на происходящие изменения, как преобразовать под делфи то есть половина не понятна. |
||||
|
|||||
| Rrader |
|
|||
|
Inspired =) ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1535 Регистрация: 7.5.2005 Репутация: 29 Всего: 191 |
Здесь тема, в которой есть код получения имен файлов из корзины, до и после удаления. Вам нужно использовать для нужных файлов функцию SHFileOperation в режиме FO_MOVE.
При этом установите флаги FOF_NOCONFIRMATION + FOF_MULTIDESTFILES + FOF_SIMPLEPROGRESS. Это эмуляция реального поведения корзины через "Undo-восстановление" - если удалить файл "Только для чтения", а потом в проводнике (Win XP) из меню "Правка" выбрать пункт "Отменить удаление", то система не будет требовать конфирмации. |
|||
|
||||
| Antony41 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 332 Регистрация: 27.12.2008 Репутация: нет Всего: 1 |
Спасибо, тему читал эту уже.
Да подход конечно хитрый но я же не могу восстанавливать именно те файлы которые мне нужны, через Undo. |
|||
|
||||
| Rrader |
|
|||
|
Inspired =) ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1535 Регистрация: 7.5.2005 Репутация: 29 Всего: 191 |
||||
|
||||
| Antony41 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 332 Регистрация: 27.12.2008 Репутация: нет Всего: 1 |
Упс! Прошу прощение!!!
Очень благодарен вам Rrader! |
|||
|
||||
![]()
|
| Правила форума "Delphi: WinAPI и системное программирование" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, bartram, MetalFan, bems, Poseidon, Rrader, Riply. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: WinAPI и системное программирование | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |