> 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


Reply via email to