2016-05-29 3 views
0

Я копирую папку с использованием Folder.CopyHere, и этот метод возвращает S_OK, даже когда пользователь прерывает процесс.Как определить истинный результат Folder.CopyHere?

Есть ли способ узнать, был ли пользователь прерван?

+2

Это полезно только для языков сценариев, используя функцию [SHFileOperation()] (https://msdn.microsoft.com/en-us/library/windows/desktop/bb762164%28v=vs.85%29.aspx). Предоставьте доступ к члену SHFILEOPSTRUCT.fAnyOperationsAborted. –

+0

Полезно знать, однако я вынужден использовать метод CopyHere для извлечения ZIP-архивов между прочим, и 'SHFileOperation', похоже, не в состоянии это сделать. –

+1

[IFileOperation] (https://msdn.microsoft.com/en-us/library/windows/desktop/bb775771.aspx) может работать с файлами без файловой системы (такими как ZIP-архивы, если вы не интерпретируете архивируйте себя как листовой узел, а скорее перечислите его детей). – IInspectable

ответ

0

Итак, ответ кажется, что невозможно получить истинный результат от Folder.CopyHere, и вместо этого следует использовать интерфейс IFileOperation, как это было предложено IInspectable.

Смежные вопросы