download.h 801 B

123456789101112131415161718192021222324252627282930
  1. #ifndef NULLSOFT_AUTH_LOGIN_DOWNLOAD_HEADER
  2. #define NULLSOFT_AUTH_LOGIN_DOWNLOAD_HEADER
  3. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  4. #pragma once
  5. #endif
  6. #include <wtypes.h>
  7. #include "./downloadResult.h"
  8. class LoginDownload
  9. {
  10. public:
  11. LoginDownload();
  12. ~LoginDownload();
  13. public:
  14. HRESULT Begin(LPCWSTR pszUrl, UINT type, LoginDownloadResult::Callback callback, void *data, LoginStatus *status, LoginDownloadResult **result);
  15. HRESULT End(LoginDownloadResult *result, BSTR *bstrFileName); // return S_FALSE if files binary indentical
  16. private:
  17. HRESULT SaveProviderList(LoginDownloadResult *result, BSTR *bstrFileName);
  18. HRESULT SaveImage(LoginDownloadResult *result, BSTR *bstrFileName);
  19. HRESULT IsBinaryEqual(LPCWSTR pszFile1, LPCWSTR pszFile2);
  20. };
  21. #endif //NULLSOFT_AUTH_LOGIN_DOWNLOAD_HEADER