C++ IFileOperation::DeleteItems不';不要在Windows 8上请求确认(与Windows 7不同)
我正在尝试使用C++ IFileOperation::DeleteItems不';不要在Windows 8上请求确认(与Windows 7不同),c++,windows,windows-8,C++,Windows,Windows 8,我正在尝试使用IFileOperation::DeleteItems在Windows上删除文件。在Windows 7上,当我调用IFileOperation::PerformOperations`时,我会遇到一个问题,问我是否要先删除这些文件。但在Windows8上,它并不要求确认,只是将文件移到垃圾箱 这就是我所说的提示: 代码如下: result = iOperation->DeleteItems(iArray); if (SUCCEEDED(result)) { result
IFileOperation::DeleteItems
在Windows上删除文件。在Windows 7上,当我调用IFileOperation::PerformOperations`时,我会遇到一个问题,问我是否要先删除这些文件。但在Windows8上,它并不要求确认,只是将文件移到垃圾箱
这就是我所说的提示:
代码如下:
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上获得删除提示?来自评论:
是否显示确认是用户设置。可以从回收站的“属性”窗口进行更改。在Windows 8系统上,该选项已禁用。在Windows 7系统上,该选项已启用。正如您所建议的,此选项的默认值可能已在Windows 8中更改,但您仍然可以手动启用它。只是为了确保两个系统上的Windows设置相同?您没有在“回收站属性”窗口中禁用Windows 8系统上的确认对话框?@hvd:非常感谢,就这样!我从来没有注意到这个选项,而且它在Windows8中默认被禁用。请给我一个答案,这样我就可以接受并投票了:)当然,很高兴这么简单。:)