45 lines
1.1 KiB
C++
45 lines
1.1 KiB
C++
// Service.h: interface for the CService class.
|
|
//
|
|
//////////////////////////////////////////////////////////////////////
|
|
|
|
#if !defined(AFX_SERVICE_H__CCA2ED69_EC91_11D5_966E_000347A347FE__INCLUDED_)
|
|
#define AFX_SERVICE_H__CCA2ED69_EC91_11D5_966E_000347A347FE__INCLUDED_
|
|
|
|
#if _MSC_VER > 1000
|
|
#pragma once
|
|
#endif // _MSC_VER > 1000
|
|
|
|
class CService
|
|
{
|
|
public:
|
|
CService();
|
|
virtual ~CService();
|
|
|
|
void Init(LPCTSTR pServiceName,LPCTSTR pServiceDisplayedName);
|
|
void Start();
|
|
void ServiceMain();
|
|
void Handler(DWORD dwOpcode);
|
|
void Run();
|
|
BOOL IsInstalled();
|
|
BOOL Install();
|
|
BOOL Uninstall();
|
|
void LogEvent(LPCSTR pszFormat, ...);
|
|
void SetServiceStatus(DWORD dwState);
|
|
|
|
private:
|
|
static void WINAPI _ServiceMain(DWORD dwArgc, LPTSTR* lpszArgv);
|
|
static void WINAPI _Handler(DWORD dwOpcode);
|
|
|
|
DWORD m_dwThreadID;
|
|
|
|
public:
|
|
TCHAR m_szServiceName[256];
|
|
TCHAR m_szServiceDisplayedName[256];
|
|
SERVICE_STATUS_HANDLE m_hServiceStatus;
|
|
SERVICE_STATUS m_status;
|
|
BOOL m_bService;
|
|
};
|
|
|
|
extern CService _Module;
|
|
#endif // !defined(AFX_SERVICE_H__CCA2ED69_EC91_11D5_966E_000347A347FE__INCLUDED_)
|