1

を使用して Windows でファイルを削除する実験を行っていますIFileOperation::DeleteItems。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 で削除プロンプトを表示するにはどうすればよいですか?

4

1 に答える 1

3

コメントから:

確認を表示するかどうかはユーザー設定です。ごみ箱のプロパティ画面から変更できます。Windows 8 システムでは、このオプションは無効になっています。Windows 7 システムでは、そのオプションが有効になっています。ご指摘のとおり、このオプションのデフォルト値は Windows 8 で変更された可能性がありますが、手動で有効にすることはできます。

于 2013-08-21T12:32:31.220 に答える