Удаление файлов и папок в Корзину (Recycle Bin)

Greez

Client
Регистрация
05.02.2014
Сообщения
85
Благодарностей
30
Баллы
18
Как удалять файлы и папки не навсегда, а чтобы они оказывались в корзине Windows?
 

zarufakis

Client
Регистрация
22.03.2019
Сообщения
1 743
Благодарностей
1 137
Баллы
113
Что мешает перемещать файлы в отдельную папку, а потом ее очищать, как очищаешь корзину?
 

Nats1

Client
Регистрация
15.04.2015
Сообщения
198
Благодарностей
194
Баллы
43
C#:
using System;
using System.IO;
 
namespace SendToTrash
{
    class Program
    {
        static void Main(string[] args)
        {
            // Путь к файлу/папке
            string path = @"C:\example\path\to\file\or\foleder";
            string recyclePath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "Microsoft\\Windows\\Recycle Bin\\");
 
            // Копируем файл/папку в корзину
            string destination = Path.Combine(recyclePath, Path.GetFileName(path));
            File.Copy(path, destination, true);
        }
    }
}
 

Greez

Client
Регистрация
05.02.2014
Сообщения
85
Благодарностей
30
Баллы
18
zarufakis

Я про такое думал, но хочется чтобы в корзину сразу летело.

Nats1

Что-то куча ошибок и в самой ZP красным подсвечивает код.
Директивы using добавлены.

Смотрю на другой похожий код лайков поставили, а у меня он тоже красный, походу чёт у меня не то. Windows 7, может в этом дело.

Screenshot_3.png


Screenshot_4.png
 
Последнее редактирование:

Nats1

Client
Регистрация
15.04.2015
Сообщения
198
Благодарностей
194
Баллы
43
Ну так его надо адаптировать под зенку. Это не сел и поехал. Код в студии ошибок не выдавал.
 

Greez

Client
Регистрация
05.02.2014
Сообщения
85
Благодарностей
30
Баллы
18
Сделал вот так для папки:

C#:
string path = @"D:\Work\Scripts\Assistant ZP templates\New folder";
string recyclePath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "Microsoft\\Windows\\Recycle Bin\\");
string destination = Path.Combine(recyclePath, Path.GetFileName(path));
File.Copy(path, destination, true);
Ошибка:
Выполнение действия CSharp OwnCode. Access to the path 'D:\Work\Scripts\Assistant ZP templates\New folder' is denied.


Сделал вот так для файла:

C#:
string path = @"D:\Work\Scripts\Assistant ZP templates\New folder\New WinRAR archive.rar";
string recyclePath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "Microsoft\\Windows\\Recycle Bin\\");
string destination = Path.Combine(recyclePath, Path.GetFileName(path));
File.Copy(path, destination, true);
Файл перемещает в C:\Users\Work\AppData\Roaming\Microsoft\Windows\Recycle Bin
не в корзину
 

Кто просматривает тему: (Всего: 2, Пользователи: 0, Гости: 2)