2010-05-20 2 views
3

Win32 API를 사용하는 LocalSystem 계정과 다른 계정으로 서비스를 설치하려면 어떻게해야합니까?Win32 API를 사용하는 LocalSystem 계정과 다른 계정으로 서비스를 설치하려면 어떻게해야합니까?

서비스를 설치하기 위해 다음 코드를 사용하고 있습니다. 다른 계정으로이 서비스를 설치하고 싶습니다. 마지막 두 매개 변수는 사용자 이름과 암호를 사용하지만 제공 할 때 오류가 발생합니다. 여기에 사용자 이름과 암호를 제공하는 구체적인 방법이 있습니까?

IntPtr sv_handle = CreateService(sc_handle, svcName, svcDispName, 
        SERVICE_ALL_ACCESS, SERVICE_WIN32_OWN_PROCESS, 
        SERVICE_AUTO_START, SERVICE_ERROR_NORMAL, 
        svcPath, null, 0, null, null, null); 
+1

오류가 발생했습니다. –

+0

"lpServiceStartName 매개 변수에 지정된 사용자 계정 이름이 없습니다." –

답변

1

lpServiceStartName에는 어떤 형식을 사용하고 있습니까?

사용자 이름이 로컬이거나 작업 그룹의 일부이면 domainname\\username이어야합니다. machinename\\username (또는 .\\username)이어야합니다.

+0

. \\ username worked ... tx –

+0

완벽한 답변 (domain \\ username) ... 도메인 \ 사용자 이름을 사용하여 시도하고 22 오류가 발생했습니다. 고마워요. 하나의 '\'은 많은 차이를 만들 수 있습니다. –

관련 문제