Leaked source code of windows server 2003
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
/**********************************************************************/ /** Microsoft Windows/NT **/ /** Copyright(c) Microsoft Corporation, 1997 - 1999 **/ /**********************************************************************/
/*
svcctrl.h Prototypes for the dialog that pops up while waiting for the server to start. FILE HISTORY: */
#if !defined(AFX_STARTSVC_H__0B2EAD4B_929C_11D0_9800_00C04FC3357A__INCLUDED_)
#define AFX_STARTSVC_H__0B2EAD4B_929C_11D0_9800_00C04FC3357A__INCLUDED_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
#include "clusapi.h"
// startsvc.h : header file
//
//
// TIMER_FREQ is the frequency of our timer messages.
// TIMER_MULT is a multiplier. We'll actually poll the
// service every (TIMER_FREQ * TIMER_MULT) seconds.
// This allows us to advance the progress indicator more
// fequently than we hit the net. Should keep the user better
// amused.
//
#define TIMER_ID 29
#define TIMER_FREQ 500
#define TIMER_MULT 6
#define POLL_TIMER_FREQ (TIMER_FREQ * TIMER_MULT)
#define POLL_DEFAULT_MAX_TRIES 1
#define PROGRESS_ICON_COUNT 12
/////////////////////////////////////////////////////////////////////////////
// CServiceCtrlDlg dialog
class CServiceCtrlDlg : public CDialog { // Construction
public: CServiceCtrlDlg(SC_HANDLE hService, LPCTSTR pServerName, LPCTSTR pszServiceDesc, BOOL bStart, CWnd* pParent = NULL); // standard constructor
CServiceCtrlDlg(HRESOURCE hResource, LPCTSTR pServerName, LPCTSTR pszServiceDesc, BOOL bStart, CWnd* pParent = NULL); // standard constructor
// Dialog Data
//{{AFX_DATA(CServiceCtrlDlg)
enum { IDD = IDD_SERVICE_CTRL_DIALOG }; CStatic m_staticMessage; CStatic m_iconProgress; //}}AFX_DATA
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CServiceCtrlDlg)
protected: virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
//}}AFX_VIRTUAL
// Implementation
protected:
// Generated message map functions
//{{AFX_MSG(CServiceCtrlDlg)
afx_msg void OnTimer(UINT nIDEvent); virtual BOOL OnInitDialog(); afx_msg void OnClose(); //}}AFX_MSG
DECLARE_MESSAGE_MAP()
public: DWORD m_dwErr;
private: void UpdateIndicator();
BOOL CheckForError(SERVICE_STATUS * pServiceStats); BOOL CheckForClusterError(SERVICE_STATUS * pServiceStats);
void CheckService(); void CheckClusterService();
void GetClusterResourceTimeout();
private: SC_HANDLE m_hService; HRESOURCE m_hResource;
UINT_PTR m_timerId; int m_nTickCounter; int m_nTotalTickCount; CString m_strServerName; CString m_strServiceDesc; BOOL m_bStart; DWORD m_dwTickBegin; DWORD m_dwWaitPeriod; DWORD m_dwLastCheckPoint; };
/*---------------------------------------------------------------------------
Class: CWaitDlg
This is a generic wait dialog (this can be used by anyone). ---------------------------------------------------------------------------*/ class CWaitDlg : public CDialog { // Construction
public: CWaitDlg(LPCTSTR pServerName, LPCTSTR pszText, LPCTSTR pszTitle, CWnd* pParent = NULL); // standard constructor
// Dialog Data
//{{AFX_DATA(CWaitDlg)
enum { IDD = IDD_SERVICE_CTRL_DIALOG }; CStatic m_staticMessage; CStatic m_iconProgress; //}}AFX_DATA
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CServiceCtrlDlg)
protected: virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
//}}AFX_VIRTUAL
// Implementation
protected:
// Generated message map functions
//{{AFX_MSG(CServiceCtrlDlg)
afx_msg void OnTimer(UINT nIDEvent); virtual BOOL OnInitDialog(); afx_msg void OnClose(); //}}AFX_MSG
DECLARE_MESSAGE_MAP()
// Override this function to provide your own implementation
// To exit out of the dialog, call CDialog::OnOK() here.
virtual void OnTimerTick() { CDialog::OnOK(); }
void CloseTimer();
CString m_strServerName; CString m_strText; CString m_strTitle; private: void UpdateIndicator();
UINT_PTR m_timerId; int m_nTickCounter; int m_nTotalTickCount; };
//{{AFX_INSERT_LOCATION}}
// Microsoft Developer Studio will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_STARTSVC_H__0B2EAD4B_929C_11D0_9800_00C04FC3357A__INCLUDED_)
|