首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从回收站删除单个项目

从回收站删除单个项目
EN

Stack Overflow用户
提问于 2009-07-13 13:52:39
回答 3查看 2.3K关注 0票数 3

在C# (可能互操作)中有任何方法永久删除回收站中的特定文件吗?

在网上搜索时,我只找到了删除到回收站的方法,而不是从里面删除。我也不想清空整个垃圾箱,只是一个特定的文件。特定的项目已经在回收站了。

我该怎么做?

编辑:

  1. --我自己没有把文件放在那里,也没有把我的程序放在那里。有人这样做了,我无法控制它。
  2. Windows搜索可以找到我的文件.??

我发现了另一件事,我可以在C中找到一个文件:文件扩展名相同但名字不同的回收商。那么,我怎么知道这是否真的是我要找的文件呢?

EN

回答 3

Stack Overflow用户

发布于 2013-01-15 17:41:32

你需要参考:

代码语言:javascript
复制
using Shell32;

代码:

代码语言:javascript
复制
var shl = new Shell();

// Get recycle folder
Folder recycler = shl.NameSpace(10);

FolderItems items = recycler.Items();
for (int i = 0; i < items.Count; i++)
{
    try
    {
        FolderItem fi = items.Item(i);
        string fileName = recycler.GetDetailsOf(fi, 0);
        string filePath = recycler.GetDetailsOf(fi, 1);
        string recyleDate = recycler.GetDetailsOf(fi, 2);
        
        if (fileName == "your file/folder")
        {
            // check if chosen item is a folder
            if (fi.IsFolder)
            {
                Directory.Delete(fi.Path, true);
            }
            else
            {
                File.Delete(fi.Path);
            }
        }
    }
    catch (Exception exc)
    {
        ...
    }
}

希望这会有帮助。为我工作。

票数 2
EN

Stack Overflow用户

发布于 2009-07-13 14:02:22

我从来没有试过,但你可以搜索你想要删除的项目,在隐藏文件夹“回收”,每个单位有,并删除它。

票数 0
EN

Stack Overflow用户

发布于 2009-07-13 14:01:12

这可能是一个愚蠢的问题,但文件进入循环是因为你的程序放在那里?如果是这样的话,您可以使用正常的文件操作删除文件,并完全绕过回收站。

票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1119567

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档