Articles of 回收站

如何“安全”删除文件夹到回收站

我正在寻找一种方法将文件夹(与子文件夹)放入一个回收站与这些条件: 它必须默默地完成 – 没有任何 Windows用户界面。 该文件夹不能永久删除。 如果它不能被放入回收站,我希望API失败。 获取像CopyFileEx这样的过程的callback例程。 到目前为止,我能够想出这个: SHFILEOPSTRUCT sfo = {0}; sfo.wFunc = FO_DELETE; sfo.pFrom = L"K:\\test del from USB\0"; //Folder on a USB stick sfo.fFlags = FOF_ALLOWUNDO | FOF_SILENT | FOF_NOCONFIRMATION | FOF_NOERRORUI | FOF_NOCONFIRMMKDIR | FOF_WANTNUKEWARNING; int res = SHFileOperation(&sfo); BOOL bFullSuccess = res == 0 && !sfo.fAnyOperationsAborted; 在USB闪存驱动器上的文件夹可怕地失败,即,即使FOF_ALLOWUNDO标志被永久删除。 所以不pipe我是不是做对了,或者SHFileOperation API是错误的! […]

如何通过命令提示符清空recyclebin?

通常我们通过鼠标右键单击并select“清空回收站”来删除回收站内容。 但我有一个要求,我需要使用命令提示符删除回收站内容。 这可能吗? 如果是这样,我该如何实现呢?

在本地NTFS驱动器上查找回收站

我试图写一些简单的代码,将回收本地驱动器上回收站的目录。 看起来好像很简单 – 在Google上应该有一千个答案。 还没有find一个:( 我发现FAT和NTFS驱动器有不同的基本名称(RECYCLED和RECYCLER)。 我发现“回收站”是一个虚拟文件夹,它结合了机器上所有驱动器的回收站。 我没有find的是findC盘的回收站目录 – 即使在越南语(或任何其他非英语)的机器上。 (没有post,我可以find表明“RECYCLER”是否获得国际化) 任何人都可以指出我一个明确的答案? 谢谢 更新:意识到CSIDL_BITBUCKET和使用它的function。 从我读过的所有东西中,它指向一个虚拟目录,它是所有驱动器上该用户删除的所有文件的联合。 寻找物理回收站目录(在我的Vista上,它似乎是C:\ $ Recycle.Bin据我所知)

我怎么知道一个目录真的是一个回收站?

我需要一个函数,给定一个path,告诉我它是否是一个回收站文件夹。 我试着用CSIDL_BITBUCKET使用像SHGetSpecialFolderPath函数,但是这不起作用,因为回收站是一个虚拟文件夹,它是所有驱动器的回收站的联合。 这个问题是要logging在http://blogs.msdn.com/oldnewthing/archive/2008/09/18/8956382.aspx发布的回复

Java 7有办法将文件放入回收站而不是在Windows上删除

Java 7是否有办法将文件放入回收站而不是在WIndows上删除? 我知道它不存在于Java 6,但我真的认为这是被添加到Java 7,但一直无法find它,如果不是有一个第三方库可用来做到这一点,我不想摆弄与我自己的JNI。 FWIW你可以使用Apple扩展在OSX上执行此操作 com.apple.eawt.FileManager.moveToTrash() 编辑:使用jna库作为答案。 FWIW在maven中央仓库上可用,但是您需要同时包含jna pom和platform pom,因为平台jar是包含回收站方法的平台。 <dependency> <groupId>net.java.dev.jna</groupId> <artifactId>jna</artifactId> <version>3.4.0</version> </dependency> <dependency> <groupId>net.java.dev.jna</groupId> <artifactId>platform</artifactId> <version>3.4.0</version> </dependency>