> per the bad user/pass combo, presumably). Per MSDN, http://msdn.microsoft.com/en-us/library/windows/desktop/ms682450%28v=vs.85%29.aspx :
If the account name specified by the lpServiceStartName parameter is the name of a managed service account or virtual account name, the lpPassword parameter must be NULL. But cygrunsrv passes either "" or the actual string (when any username is provided). It should pass NULL for the username that look like "NT SERVICE\svcname": if (!(sh = CreateService (sm, san.name (), disp, SERVICE_ALL_ACCESS, SERVICE_WIN32_OWN_PROCESS | (interactive ? SERVICE_INTERACTIVE_PROCESS : 0), type == Auto ? SERVICE_AUTO_START : SERVICE_DEMAND_START, SERVICE_ERROR_NORMAL, mypath, NULL, NULL, dependencies, username, username ? pass ?: "" : NULL))) Anton Lavrentiev Contractor NIH/NLM/NCBI