39                 static BOOL                             m_bInstance;                    
 
   42                         TCHAR                                   m_lpServiceName[256];
 
   43                         TCHAR                                   m_lpDisplayName[256];
 
   47                         SERVICE_STATUS                  m_ssStatus;                     
 
   48                         SERVICE_STATUS_HANDLE   m_sshStatusHandle;
 
   49                         DWORD                                   m_dwControlsAccepted;   
 
   56                         BOOL                                    m_bAssumeRunBlocks;
 
   59                         DWORD                   m_dwDesiredAccess;              
 
   60                         DWORD                   m_dwServiceType;                
 
   62                         DWORD                   m_dwErrorControl;               
 
   63                         LPCTSTR                 m_pszLoadOrderGroup;    
 
   65                         LPCTSTR                 m_pszDependencies;              
 
   66                         LPCTSTR                 m_pszStartName;                 
 
   67                         LPCTSTR                 m_pszPassword;                  
 
   72                         CNTService(LPCTSTR ServiceName, LPCTSTR DisplayName = 0);
 
   73                         virtual ~CNTService();
 
   76                         CNTService( 
const CNTService & );
 
   77                         CNTService & operator=( 
const CNTService & );
 
  113                         virtual void    Run(DWORD argc, LPTSTR * argv) = 0;
 
  114                         virtual void    Stop() = 0;
 
  125                         virtual void    Pause();
 
  126                         virtual void    Continue();
 
  135                         virtual void    Shutdown();
 
  197                         virtual BOOL    RegisterService(
int argc, 
char ** argv);
 
  204                         virtual BOOL    StartDispatcher();
 
  214                         virtual BOOL    InstallService();
 
  224                         virtual BOOL    RemoveService();
 
  231                         virtual BOOL    EndService();
 
  236                         virtual BOOL    StartupService();
 
  245                         virtual BOOL    DebugService(
int argc, 
char **argv,BOOL faceless=FALSE);        
 
  260                         virtual void    RegisterApplicationLog(
 
  261                                                                 LPCTSTR lpszProposedMessageFile,
 
  262                                                                 DWORD dwProposedTypes
 
  268                         virtual void    DeregisterApplicationLog();
 
  274                         LPTSTR                  GetLastErrorText(LPTSTR Buf, DWORD Size);
 
  287                                                                 DWORD WaitHint = 3000,          
 
  300                         virtual void    AddToMessageLog(
 
  302                                                                 WORD    EventType = EVENTLOG_ERROR_TYPE,
 
  303                                                                 DWORD   dwEventID = DWORD(-1)
 
  310                         static void WINAPI      ServiceCtrl(DWORD CtrlCode);
 
  311                         static void WINAPI      ServiceMain(DWORD argc, LPTSTR * argv);
 
  312                         static BOOL WINAPI      ControlHandler(DWORD CtrlType);
 
  316                         BOOL OsIsWin95()
 const { 
return ! m_bWinNT; }
 
  323         CNTService * AfxGetService();
 
  326 #endif  // NTService_h