X-Git-Url: http://git.iain.cx/?a=blobdiff_plain;f=service.cpp;h=294497a7e42d3694a83a3ed49592100333bf3518;hb=ef26a193bb671cd22d498839f205a0ec4523518e;hp=fc9b73c2bfefe7f8b360e02171808cd4a8e74ec2;hpb=880463817dce3007eb2eefa267081892abaaba5a;p=nssm.git diff --git a/service.cpp b/service.cpp index fc9b73c..294497a 100644 --- a/service.cpp +++ b/service.cpp @@ -142,20 +142,8 @@ int install_service(nssm_service_t *service) { } /* Get path of this program */ - TCHAR path[MAX_PATH]; - GetModuleFileName(0, path, MAX_PATH); - - /* Construct command */ - TCHAR command[CMD_LENGTH]; - size_t pathlen = _tcslen(path); - if (pathlen + 1 >= VALUE_LENGTH) { - print_message(stderr, NSSM_MESSAGE_PATH_TOO_LONG, NSSM); - return 3; - } - if (_sntprintf_s(command, sizeof(command), _TRUNCATE, _T("\"%s\""), path) < 0) { - print_message(stderr, NSSM_MESSAGE_OUT_OF_MEMORY_FOR_IMAGEPATH); - return 4; - } + TCHAR command[MAX_PATH]; + GetModuleFileName(0, command, _countof(command)); /* Create the service */ service->handle = CreateService(services, service->name, service->name, SC_MANAGER_ALL_ACCESS, SERVICE_WIN32_OWN_PROCESS, SERVICE_AUTO_START, SERVICE_ERROR_NORMAL, command, 0, 0, 0, 0, 0);