www.pudn.com > CRC32.rar > CRC32Ex.h
/* Copyright 2006 - 2008, All Rights Reserved. CRC32类之扩展 作者 - 张鲁夺(zhangluduo) MSN - zhangluduo@msn.com QQ群 - 34064264 为所有爱我的人和我爱的人努力! */ #ifndef _CRC32EX_H #define _CRC32EX_H #include "CRC32.h" #include "MemberFxn.h" #pragma warning(disable : 4786) #includeusing namespace std; #define BUFFER_SIZE 1024 class CRC32Ex : public CRC32 { public: CRC32Ex(); virtual ~CRC32Ex(); private: string m_strErr; // 错误描述 bool m_bTerminate; // 终止文件计算标志 void OnFileProcessing(int nProgress, MemberFxn addr); string ResultToHex(unsigned long Result, bool bUpper = true); public: // 获取文件的CRC32值 string GetCRC32FromFile (char* FileName, bool bUpper = true, MemberFxn addr = 0); // 获取内存数据的CRC32值 string GetCRC32FromBuffer(unsigned char* pData, unsigned long DataLen, bool bUpper = true); // 此函数可提前结束GetCRC32FromFile函数的执行 void StopCalcFile(); // 获取错误描述 string GetError(); }; #endif