2017-04-12 13 views
0

내가 고민하는 한 가지는 사용자 이름과 암호로 서비스를 등록하는 것입니다.구성에 사용자 이름과 암호를 전달하는 상단 선반

사용자 이름과 암호를 RunAs 메서드에 하드 코딩하고 서비스를 등록 할 수는 있지만 실용적이지는 않습니다.

제가

myservice.exe install start -username:Domain\username -password:itsAsecret 

또는

myservice.exe install start -username "Domain\username" -password "itsAsecret" 

서비스 레지스터 시작은 로컬 시스템에서 실행되는 경우.

configure.RunAs(username, password) 

방법 :

는 어떻게에 사용자 이름과 암호를 전달합니까? 내가 commanline에게 내 자신 을 분석 한이 문제를 해결 얻을

하고 내가 할 수 있습니다

if (commandlineParameters.ContainsKey("username") && commandlineParameters.ContainsKey("password")) 
    configure.RunAs(commandlineParameters["username"], commandlineParameters["password"]); 
else 
    configure.RunAsLocalSystem(); 

하지만 난이 일을해야한다고 생각 :

configure.ApplyCommandLine(string.Join(" ", args)); 

하거나

configure.ApplyCommandLine(); 

하지만 서비스가 로컬 시스템으로 등록 된 경우

답변

1

설치시 "시작"명령에 문제가있는 것 같습니다.

서비스를 설치하고 시작하려면 두 개의 별도 명령이 필요합니다.

myservice.exe install -username:Domain\username -password:itsAsecret 
myservice.exe start 

이 내가 추가 한 구문 분석 코드를 제거 얻을 수 있음을 의미하고 간단하게

configure.ApplyCommandLine();