X-Git-Url: http://git.iain.cx/?a=blobdiff_plain;f=process.h;h=2e402e498124f99f9f424e19dbb08b60ae372d24;hb=66861c12e7d515f4d0e779102780d89e3fcd2a12;hp=21d86da721e6420b9959326a1e3e20418370606b;hpb=99c5c2868f1d351d4d0569fda9199dda1aadad07;p=nssm.git diff --git a/process.h b/process.h index 21d86da..2e402e4 100644 --- a/process.h +++ b/process.h @@ -4,18 +4,33 @@ #include typedef struct { + TCHAR *name; + HANDLE process_handle; unsigned long pid; unsigned long exitcode; + unsigned long stop_method; + unsigned long kill_console_delay; + unsigned long kill_window_delay; + unsigned long kill_threads_delay; + SERVICE_STATUS_HANDLE status_handle; + SERVICE_STATUS *status; + FILETIME creation_time; + FILETIME exit_time; int signalled; } kill_t; +void service_kill_t(nssm_service_t *, kill_t *); int get_process_creation_time(HANDLE, FILETIME *); int get_process_exit_time(HANDLE, FILETIME *); -int check_parent(char *, PROCESSENTRY32 *, unsigned long, FILETIME *, FILETIME *); +int check_parent(kill_t *, PROCESSENTRY32 *, unsigned long); int CALLBACK kill_window(HWND, LPARAM); -int kill_threads(char *, SERVICE_STATUS_HANDLE, SERVICE_STATUS *, kill_t *); -int kill_console(char *, SERVICE_STATUS_HANDLE, SERVICE_STATUS *, HANDLE, unsigned long); -int kill_process(char *, SERVICE_STATUS_HANDLE, SERVICE_STATUS *, unsigned long, HANDLE, unsigned long, unsigned long); -void kill_process_tree(char *, SERVICE_STATUS_HANDLE, SERVICE_STATUS *, unsigned long, unsigned long, unsigned long, unsigned long, FILETIME *, FILETIME *); +int kill_threads(nssm_service_t *, kill_t *); +int kill_threads(kill_t *); +int kill_console(nssm_service_t *, kill_t *); +int kill_console(kill_t *); +int kill_process(nssm_service_t *, kill_t *); +int kill_process(kill_t *); +void kill_process_tree(nssm_service_t *, kill_t *, unsigned long); +void kill_process_tree(kill_t *, unsigned long); #endif