1 #ifndef __SERVMAN_PRECOMP_H
2 #define __SERVMAN_PRECOMP_H
4 //#define WIN32_LEAN_AND_MEAN
6 #include <windowsx.h> /* GET_X/Y_LPARAM */
14 #pragma warning(disable : 4100)
17 #define NO_ITEM_SELECTED -1
18 #define MAX_KEY_LENGTH 256
26 typedef struct _MAIN_WND_INFO
35 ENUM_SERVICE_STATUS_PROCESS
*pAllServices
;
36 ENUM_SERVICE_STATUS_PROCESS
*pCurrentService
;
38 INT SelectedItem
;/* selection number in the list view */
43 } MAIN_WND_INFO
, *PMAIN_WND_INFO
;
46 BOOL CALLBACK
AboutDialogProc(HWND hDlg
, UINT message
, WPARAM wParam
, LPARAM lParam
);
47 BOOL CALLBACK
CreateDialogProc(HWND hDlg
, UINT message
, WPARAM wParam
, LPARAM lParam
);
48 BOOL CALLBACK
DeleteDialogProc(HWND hDlg
, UINT message
, WPARAM wParam
, LPARAM lParam
);
49 BOOL CALLBACK
ProgressDialogProc(HWND hDlg
, UINT Message
, WPARAM wParam
, LPARAM lParam
);
53 extern HINSTANCE hInstance
;
54 extern HANDLE ProcessHeap
;
57 typedef struct _MENU_HINT
61 } MENU_HINT
, *PMENU_HINT
;
63 VOID
ChangeListViewText(PMAIN_WND_INFO Info
, ENUM_SERVICE_STATUS_PROCESS
* pService
, UINT Column
);
64 BOOL
InitMainWindowImpl(VOID
);
65 VOID
UninitMainWindowImpl(VOID
);
66 HWND
CreateMainWindow(LPCTSTR lpCaption
, int nCmdShow
);
69 VOID
SetListViewStyle(HWND hListView
, DWORD View
);
70 VOID
ListViewSelectionChanged(PMAIN_WND_INFO Info
, LPNMLISTVIEW pnmv
);
71 BOOL
CreateListView(PMAIN_WND_INFO Info
);
74 BOOL
DoStart(PMAIN_WND_INFO Info
);
77 BOOL
DoStop(PMAIN_WND_INFO Info
);
78 BOOL
DoPause(PMAIN_WND_INFO Info
);
79 BOOL
DoResume(PMAIN_WND_INFO Info
);
82 HWND
CreateProgressDialog(HWND hParent
, LPTSTR lpServiceName
, UINT Event
);
83 VOID
IncrementProgressBar(HWND hProgDlg
);
84 VOID
CompleteProgressBar(HWND hProgDlg
);
87 ENUM_SERVICE_STATUS_PROCESS
* GetSelectedService(PMAIN_WND_INFO Info
);
88 LPQUERY_SERVICE_CONFIG
GetServiceConfig(LPTSTR lpServiceName
);
89 BOOL
SetServiceConfig(LPQUERY_SERVICE_CONFIG pServiceConfig
, LPTSTR lpServiceName
, LPTSTR lpPassword
);
90 LPTSTR
GetServiceDescription(LPTSTR lpServiceName
);
91 LPTSTR
GetExecutablePath(LPTSTR lpServiceName
);
92 BOOL
RefreshServiceList(PMAIN_WND_INFO Info
);
93 BOOL
UpdateServiceStatus(ENUM_SERVICE_STATUS_PROCESS
* pService
);
94 BOOL
GetServiceList(PMAIN_WND_INFO Info
, DWORD
*NumServices
);
97 BOOL
SetDescription(LPTSTR
, LPTSTR
);
100 LONG APIENTRY
OpenPropSheet(PMAIN_WND_INFO Info
);
103 VOID
ExportFile(PMAIN_WND_INFO Info
);
106 INT
AllocAndLoadString(OUT LPTSTR
*lpTarget
,
109 DWORD
LoadAndFormatString(IN HINSTANCE hInstance
,
111 OUT LPTSTR
*lpTarget
,
113 BOOL
StatusBarLoadAndFormatString(IN HWND hStatusBar
,
115 IN HINSTANCE hInstance
,
118 BOOL
StatusBarLoadString(IN HWND hStatusBar
,
120 IN HINSTANCE hInstance
,
122 INT
GetTextFromEdit(OUT LPTSTR lpString
,
126 VOID
DisplayString(PTCHAR
);
127 HIMAGELIST
InitImageList(UINT NumButtons
,
132 #endif /* __SERVMAN_PRECOMP_H */