00001
00002
00003
00004 ACE_INLINE
00005 ACE_NT_Service::ACE_NT_Service (DWORD start_timeout,
00006 DWORD service_type,
00007 DWORD controls_mask) :
00008 start_time_(start_timeout),
00009 svc_handle_(0),
00010 svc_sc_handle_(0),
00011 name_(0),
00012 desc_(0),
00013 host_(0)
00014 {
00015 svc_status_.dwServiceType = service_type;
00016 svc_status_.dwCurrentState = 0;
00017 svc_status_.dwControlsAccepted = controls_mask;
00018 svc_status_.dwWin32ExitCode = NO_ERROR;
00019 svc_status_.dwServiceSpecificExitCode = 0;
00020 svc_status_.dwCheckPoint = 0;
00021 }
00022
00023
00024 ACE_INLINE
00025 ACE_NT_Service::ACE_NT_Service (const ACE_TCHAR *name,
00026 const ACE_TCHAR *desc,
00027 DWORD start_timeout,
00028 DWORD service_type,
00029 DWORD controls_mask) :
00030 start_time_(start_timeout),
00031 svc_handle_(0),
00032 svc_sc_handle_(0),
00033 name_(ACE::strnew(name)),
00034 desc_(ACE::strnew(desc)),
00035 host_(0)
00036 {
00037 svc_status_.dwServiceType = service_type;
00038 svc_status_.dwCurrentState = 0;
00039 svc_status_.dwControlsAccepted = controls_mask;
00040 svc_status_.dwWin32ExitCode = NO_ERROR;
00041 svc_status_.dwServiceSpecificExitCode = 0;
00042 svc_status_.dwCheckPoint = 0;
00043 }
00044
00045
00046 ACE_INLINE int
00047 ACE_NT_Service::svc (void)
00048 {
00049 return -1;
00050 }
00051
00052
00053 ACE_INLINE
00054 const ACE_TCHAR *
00055 ACE_NT_Service::name (void) const
00056 {
00057 return name_;
00058 }
00059
00060 ACE_INLINE
00061 const ACE_TCHAR *
00062 ACE_NT_Service::desc (void) const
00063 {
00064 return desc_;
00065 }
00066
00067 ACE_INLINE
00068 const ACE_TCHAR *
00069 ACE_NT_Service::host (void) const
00070 {
00071 return host_;
00072 }
00073
00074 ACE_INLINE void
00075 ACE_NT_Service::svc_handle(const SERVICE_STATUS_HANDLE new_svc_handle)
00076 {
00077 this->svc_handle_ = new_svc_handle;
00078 return;
00079 }