home *** CD-ROM | disk | FTP | other *** search
/ Softwarová Záchrana 3 / Softwarova-zachrana-3.bin / pserv.cpl / pserv-2.4.exe / source / MemoryBuffer.h < prev    next >
C/C++ Source or Header  |  2005-01-05  |  1KB  |  39 lines

  1. #ifndef MemoryBuffer_H
  2. #define MemoryBuffer_H
  3.  
  4. class MemoryBuffer
  5.     {
  6.     public:
  7.         MemoryBuffer()
  8.             :   m_lpbDynamicMemory( NULL )
  9.         {
  10.         }
  11.         virtual ~MemoryBuffer()
  12.         {
  13.             ReleaseMemory();
  14.         }
  15.  
  16.         LPQUERY_SERVICE_CONFIG QueryServiceConfig(SC_HANDLE hService);
  17.         LPCTSTR GetServiceDescription(SC_HANDLE hService);
  18.         LPSERVICE_STATUS_PROCESS QueryServiceStatusEx(SC_HANDLE hService);
  19.  
  20.     protected:
  21.         void ReleaseMemory();
  22.  
  23.         typedef BOOL (WINAPI MemoryBuffer::*LPFNMethod)(LPBYTE lpbMemory, DWORD dwSize);
  24.         LPVOID StandardProcess(LPFNMethod func);
  25.         BOOL WINAPI IGetServiceDescription(LPBYTE lpbMemory, DWORD dwSize);
  26.         BOOL WINAPI IQueryServiceConfig(LPBYTE lpbMemory, DWORD dwSize);
  27.         BOOL WINAPI IQueryServiceStatusEx(LPBYTE lpbMemory, DWORD dwSize);
  28.  
  29.         SC_HANDLE m_hService;
  30.         DWORD m_dwBytesNeeded;
  31.         LPBYTE m_lpbDynamicMemory;
  32.         BYTE m_bStaticMemory[4096];
  33.     };
  34.  
  35.  
  36.  
  37.  
  38. #endif // MemoryBuffer_H
  39.