문제

이 이상한 문제가 있습니다 ChangeServiceConfig 새로 설치된 서비스 (i CreateService 로그온 자격 증명을 제공하는 것은 직접적으로 제공되지만 함수가 성공하는 동안 (TRUE를 반환) 서비스를 시작하려고하면 1069 (로그온 실패)에 실패합니다. 서비스 관리자로 들어가서 손으로 자격 증명을 수정하면 (사용자 이름이 정확하지만 물론 암호를 볼 수는 없습니다), 모두 정상이며 시작됩니다.

호출 자체는 사소합니다.

ChangeServiceConfig(hService, SERVICE_NO_CHANGE, SERVICE_NO_CHANGE, SERVICE_NO_CHANGE, NULL, NULL, NULL, NULL, strUser, strPassword, NULL);

내가 어디에서 찾아야하고 무엇이 잘못 될 수 있는지에 대한 아이디어가 있습니까?

미리 감사드립니다.

도움이 되었습니까?

해결책

사용자 계정은 서비스로 로그온 할 권리가 있어야합니다 (SeServiceLogonRight). 컴퓨터 관리자를 포함한 많은 사용자에게는이 플래그 세트가 없을 수 있으며 수동으로 설정해야 할 수도 있습니다. Windows Services 제어판은 실제로 서비스를 구성하는 데 사용될 때 무대 뒤에서 조용히 수행합니다.

또한 사용자 이름을 완전히 자격을 갖추어야한다는 모호한 안개가 자욱한 추억이 있습니다. 들어 있어야합니다 DOMAIN\Username 형식 - 로컬 계정 인 경우 지정해야합니다. .\Username 또는 기계 이름과 사용을 찾으십시오 MACHINENAME\Username

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top