IFileOperation :: DeleteItems不要求Windows 8上的确认(不像Windows 7)

我正在试验用IFileOperation::DeleteItemsWindows上删除文件。 在Windows 7上,当我调用IFileOperation :: PerformOperations`时,我得到一个问题,询问是否要先删除文件。 但在Windows 8上,它并不要求确认,只是将文件移动到垃圾箱。

这是我正在谈论的提示:

在这里输入图像说明

代码如下:

 result = iOperation->DeleteItems(iArray); if (SUCCEEDED(result)) { result = iOperation->SetOperationFlags(FOF_ALLOWUNDO); assert(SUCCEEDED(result)); result = iOperation->SetOwnerWindow((HWND)parentWindow); assert(SUCCEEDED(result)); result = iOperation->PerformOperations(); } 

我也试过SetOperationFlags(FOF_ALLOWUNDO | FOFX_RECYCLEONDELETE); – 效果似乎是一样的。

如果我要求不可撤消地删除一个文件,而不是被移到垃圾箱( SetOperationFlags(FOF_WANTNUKEWARNING) ),那么我会得到一个类似于Windows 7的提示。

如何在Windows 8上获得删除提示?

Solutions Collecting From Web of "IFileOperation :: DeleteItems不要求Windows 8上的确认(不像Windows 7)"