我使用C++ Builder和SHFileOperation從網絡位置下載應用程序(它的文件夾)。 WinApi有它自己的進度條,但我需要一個具有進度條的自定義表單。SHFileOperation copy with custom progress bar/C++ builder
我該如何跟蹤複製進度,以便我可以擁有自己的進度條? 一個簡短的例子將定義幫助。謝謝。
我使用C++ Builder和SHFileOperation從網絡位置下載應用程序(它的文件夾)。 WinApi有它自己的進度條,但我需要一個具有進度條的自定義表單。SHFileOperation copy with custom progress bar/C++ builder
我該如何跟蹤複製進度,以便我可以擁有自己的進度條? 一個簡短的例子將定義幫助。謝謝。
SHFileOperation
不提供您接收進度回調的方法。您可以接受系統提供的進度反饋對話框,也可以不進行任何進度報告。
有支持進度回調的CopyFileEx
。但是,這隻適用於複製單個文件而不是整個目錄。
在Vista和更高版本上有IFileOperation
這是SHFileOperation
的替代品。該接口比SHFileOperation
更有能力。您可以使用IFileOperation
複製整個目錄並接收進度通知。
如果您需要支持XP或更早版本,那麼您需要編寫自己的目錄複製例程。您將必須計算要複製的文件的總大小,然後使用CopyFileEx
執行每個單獨的文件副本。您將收到來自CopyFileEx
的進度回調,然後將其轉化爲應用程序顯示的整體進度事件。
我會看看IFileOperation。不知道,謝謝。 – apo