HWND hWnd, UINT msg, WPARAM
MB_OK | MB_ICONINFORMATION);
// Освобождаем буфер
free(lpBuf);
}
// Закрываем идентификатор системы управления
// сервисами
CloseServiceHandle(schSCManager);
break;
}
case ID_HELP_ABOUT:
{
MessageBox(hWnd,
"Simple Service Control\n"
"(C) Alexandr Frolov, 1996\n"
"Email: frolov@glas.apc.org",
szAppTitle, MB_OK | MB_ICONINFORMATION);
return 0L;
break;
}
default:
break;
}
return FORWARD_WM_COMMAND(hWnd, id, hwndCtl, codeNotify,
DefWindowProc);
}
В файле srvctrl.h (листинг 5.4) определено имя сервиса и прототипы функций.
Листинг 5.4. Файл service/srvctrl.h
// Имя сервиса
#define MYServiceName "Sample of simple service"
// -----------------------------------------------------
// Описание функций
// -----------------------------------------------------
LRESULT WINAPI
WndProc( HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam);
void WndProc_OnCommand(HWND hWnd, int id,
HWND hwndCtl, UINT codeNotify);
void WndProc_OnDestroy(HWND hWnd);
LRESULT WINAPI
DlgProc(HWND hdlg, UINT msg, WPARAM wParam, LPARAM lParam);
BOOL DlgProc_OnInitDialog(HWND hdlg, HWND hwndFocus,
LPARAM lParam);
void DlgProc_OnCommand(HWND hdlg, int id,
HWND hwndCtl, UINT codeNotify);
Файл resource.h (листинг 5.5) содержит описания констант, которые используются в файле определения ресурсов приложения.
Листинг 5.5. Файл service/resource.h
//{{NO_DEPENDENCIES}}
// Microsoft Developer Studio generated include file.
// Used by srvctrl.rc
//
#define IDR_MENU1 101
#define IDR_APPMENU 101
#define IDI_APPICON 102
#define IDI_APPICONSM 103
#define ID_FILE_EXIT 40001
#define ID_HELP_ABOUT 40002
Содержание Назад Вперед