2019-01-05 20:21:43 +08:00
|
|
|
|
#pragma once
|
|
|
|
|
|
#include <Windows.h>
|
|
|
|
|
|
|
|
|
|
|
|
class CBuffer
|
|
|
|
|
|
{
|
|
|
|
|
|
public:
|
|
|
|
|
|
CBuffer(void);
|
|
|
|
|
|
~CBuffer(void);
|
|
|
|
|
|
|
2019-01-10 19:35:03 +08:00
|
|
|
|
ULONG GetBufferMaxLength();
|
|
|
|
|
|
ULONG ReadBuffer(PBYTE Buffer, ULONG ulLength);
|
|
|
|
|
|
ULONG GetBufferLength(); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7><EFBFBD>ݳ<EFBFBD><DDB3><EFBFBD>;
|
|
|
|
|
|
ULONG DeAllocateBuffer(ULONG ulLength);
|
|
|
|
|
|
VOID ClearBuffer();
|
|
|
|
|
|
ULONG ReAllocateBuffer(ULONG ulLength);
|
|
|
|
|
|
BOOL WriteBuffer(PBYTE Buffer, ULONG ulLength);
|
|
|
|
|
|
PBYTE GetBuffer(ULONG ulPos=0);
|
|
|
|
|
|
ULONG RemoveComletedBuffer(ULONG ulLength);
|
|
|
|
|
|
VOID ReleaseMember();
|
|
|
|
|
|
VOID InitMember();
|
2019-01-05 20:21:43 +08:00
|
|
|
|
|
|
|
|
|
|
protected:
|
|
|
|
|
|
PBYTE m_Base;
|
|
|
|
|
|
PBYTE m_Ptr;
|
|
|
|
|
|
ULONG m_ulMaxLength;
|
|
|
|
|
|
CRITICAL_SECTION m_cs;
|
|
|
|
|
|
};
|