2013-01-03 2 views
0

나를 위해 분산 네트워크 유지 관리 작업을 수행하는 C#을 사용하여 Windows 서비스를 만들었습니다. 작업 중 하나는 컴퓨터를 원격으로 defraging하는 것이고, 이전 상자 중 일부에서는 defrag.exe와 함께 psexec를 사용하는 것이 유일한 방법이라는 것을 알았습니다. 이 코드는 단순히 C# 코드를 실행할 때 잘 작동하지만 Windows 서비스로 변환 할 때 Win32_Volume 테이블을 사용하여 절개를 수행하지만 PsExec를 사용하여 XP 시스템을 조각 모음 할 때 문제가 발생합니다.Windows 서비스에서 PsExec 사용

제 질문은 Windows 서비스 내에서 PsExec을 사용하면서 알려진 오류가 있습니까? 그렇다면 사용할 수있는 다른 방법에 대한 제안이 있습니까?

감사합니다.

답변

0

psexec은 처음에는 지정된 사용자로 실행될 때 소프트웨어 사용권 계약 대화 상자를 표시하므로 서비스가 다른 사용자로 실행중인 경우 문제가 될 수 있습니다. 분명히 내가 확신 할 수 없지만

당신은이 문제가 될 수있는 매개 변수

/accepteula 

를 추가하여 억제 할 수 있습니다!

+0

위대한이 내 문제가 많이 고마워! – mgrenier

+0

아직도이 문제가 있습니다. 코드에 더 가깝지 만 PsExec을 사용하는 원격 컴퓨터에서 defrag.exe를 실행하는 데 사용 권한 문제가있는 것으로 보입니다. 충분한 권한을 가진 계정의 사용자 이름과 암호를 입력하려고 시도했지만 도움이되지 않습니다. 어떤 아이디어? – mgrenier

+0

내 지속적인 문제는 PsExec과 더 관련이없는 것 같고 작업이 C# 코드에서 작동하기 때문에 Windows 서비스와 관련이 있지만 내 Windows 서비스에서 종료 코드 6 (처리가 유효하지 않음)을 제공하기 때문에 ... 문제의 컴퓨터에 대한 관리자 권한을 가진 계정으로 프로세스를 실행하고 있습니까? – mgrenier