2016-05-29 42 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得到真正的結果,而解決方法是改爲使用接口,正如IInspectable所建議的那樣。