X-Git-Url: http://git.iain.cx/?a=blobdiff_plain;f=nssm.h;h=bdefdbedf646d8a479333cd2467f829571e9d0e6;hb=a02019297db435c1de6846fd0387a53335f4289e;hp=1479f102c67c7939dfc4733add686110f3de4810;hpb=98a2516c22eefd912301ff3c39736da8970dcdff;p=nssm.git diff --git a/nssm.h b/nssm.h index 1479f10..bdefdbe 100644 --- a/nssm.h +++ b/nssm.h @@ -5,35 +5,24 @@ #include #include #include +#include #include +#include "service.h" #include "event.h" #include "imports.h" #include "messages.h" #include "process.h" #include "registry.h" #include "io.h" -#include "service.h" #include "gui.h" -int str_equiv(const char *, const char *); +int str_equiv(const TCHAR *, const TCHAR *); +void strip_basename(TCHAR *); -#define NSSM "nssm" -#define NSSM_VERSION "2.18" -#define NSSM_VERSIONINFO 2,18,0,0 -#define NSSM_DATE "2013-11-15" - -/* - MSDN says the commandline in CreateProcess() is limited to 32768 characters - and the application name to MAX_PATH. - A registry key is limited to 255 characters. - A registry value is limited to 16383 characters. - Therefore we limit the service name to accommodate the path under HKLM. -*/ -#define EXE_LENGTH MAX_PATH -#define CMD_LENGTH 32768 -#define KEY_LENGTH 255 -#define VALUE_LENGTH 16383 -#define SERVICE_NAME_LENGTH KEY_LENGTH - 55 +#define NSSM _T("nssm") +#define NSSM_VERSION _T("2.21") +#define NSSM_VERSIONINFO 2,21,0,0 +#define NSSM_DATE _T("2013-11-24") /* Throttle the restart of the service if it stops before this many @@ -66,6 +55,19 @@ int str_equiv(const char *, const char *); #define NSSM_STOP_METHOD_THREADS (1 << 2) #define NSSM_STOP_METHOD_TERMINATE (1 << 3) +/* Startup types. */ +#define NSSM_STARTUP_AUTOMATIC 0 +#define NSSM_STARTUP_DELAYED 1 +#define NSSM_STARTUP_MANUAL 2 +#define NSSM_STARTUP_DISABLED 3 + +/* Exit actions. */ +#define NSSM_EXIT_RESTART 0 +#define NSSM_EXIT_IGNORE 1 +#define NSSM_EXIT_REALLY 2 +#define NSSM_EXIT_UNCLEAN 3 +#define NSSM_NUM_EXIT_ACTIONS 4 + /* How many milliseconds to wait before updating service status. */ #define NSSM_SERVICE_STATUS_DEADLINE 20000