Use close_handle().
[nssm.git] / process.h
1 #ifndef PROCESS_H\r
2 #define PROCESS_H\r
3 \r
4 #include <psapi.h>\r
5 #include <tlhelp32.h>\r
6 \r
7 typedef struct {\r
8   TCHAR *name;\r
9   HANDLE process_handle;\r
10   unsigned long depth;\r
11   unsigned long pid;\r
12   unsigned long exitcode;\r
13   unsigned long stop_method;\r
14   unsigned long kill_console_delay;\r
15   unsigned long kill_window_delay;\r
16   unsigned long kill_threads_delay;\r
17   SERVICE_STATUS_HANDLE status_handle;\r
18   SERVICE_STATUS *status;\r
19   FILETIME creation_time;\r
20   FILETIME exit_time;\r
21   int signalled;\r
22 } kill_t;\r
23 \r
24 typedef int (*walk_function_t)(nssm_service_t *, kill_t *);\r
25 \r
26 HANDLE get_debug_token();\r
27 void service_kill_t(nssm_service_t *, kill_t *);\r
28 int get_process_creation_time(HANDLE, FILETIME *);\r
29 int get_process_exit_time(HANDLE, FILETIME *);\r
30 int check_parent(kill_t *, PROCESSENTRY32 *, unsigned long);\r
31 int CALLBACK kill_window(HWND, LPARAM);\r
32 int kill_threads(nssm_service_t *, kill_t *);\r
33 int kill_threads(kill_t *);\r
34 int kill_console(nssm_service_t *, kill_t *);\r
35 int kill_console(kill_t *);\r
36 int kill_process(nssm_service_t *, kill_t *);\r
37 int kill_process(kill_t *);\r
38 int print_process(nssm_service_t *, kill_t *);\r
39 int print_process(kill_t *);\r
40 void walk_process_tree(nssm_service_t *, walk_function_t, kill_t *, unsigned long);\r
41 void kill_process_tree(kill_t *, unsigned long);\r
42 \r
43 #endif\r