1 #include "RKLog.h"
2
GetEnableLog()3 bool CRKLog::GetEnableLog()
4 {
5 return m_enable;
6 }
SetEnableLog(bool bEnable)7 void CRKLog::SetEnableLog(bool bEnable)
8 {
9 m_enable = bEnable;
10 }
11
CRKLog(bool enable)12 CRKLog::CRKLog(bool enable)
13 {
14
15 EnableLog.setContainer(this);
16 EnableLog.getter(&CRKLog::GetEnableLog);
17 EnableLog.setter(&CRKLog::SetEnableLog);
18
19 m_enable = enable;
20 }
~CRKLog()21 CRKLog::~CRKLog()
22 {
23 }
Record(const tchar * lpFmt,...)24 void CRKLog::Record(const tchar *lpFmt, ...)
25 {
26 /************************* �������־ ***********************/
27 va_list ap;
28 va_start(ap, lpFmt);
29 printf("librkupdate_");
30 vfprintf(stdout, lpFmt, ap);
31 printf("\r\n");
32 va_end(ap);
33 }
34
SaveBuffer(tstring fileName,PBYTE lpBuffer,DWORD dwSize)35 bool CRKLog::SaveBuffer(tstring fileName, PBYTE lpBuffer, DWORD dwSize)
36 {
37 FILE *file;
38 file = fopen(fileName.c_str(), _T("wb+"));
39 if (!file)
40 {
41 return false;
42 }
43 fwrite(lpBuffer, 1, dwSize, file);
44 fclose(file);
45 return true;
46 }
PrintBuffer(tstring & strOutput,PBYTE lpBuffer,DWORD dwSize,UINT uiLineCount)47 void CRKLog::PrintBuffer(tstring &strOutput, PBYTE lpBuffer, DWORD dwSize, UINT uiLineCount)
48 {
49 UINT i, count;
50 tchar strHex[32];
51 strOutput = _T("");
52 for (i = 0, count = 0; i < dwSize; i++, count++)
53 {
54 if (count >= uiLineCount)
55 {
56 strOutput += _T("\r\n");
57 count = 0;
58 }
59 sprintf(strHex, _T("%02X"), lpBuffer[i]);
60 strOutput = strOutput + _T(" ") + strHex;
61
62 }
63 }