2011-12-30 5 views
2

다른 사용자의 Java 서버에서 CSharp 프로세스를 실행하고 싶습니다. PSExec을 사용하여 PC에서 정상적으로 작동하지만 "실제"서버에서 실행하면 프로세스가 즉시 중단됩니다. (그것은 CSharp 애플 리케이션도 시작하지 않는 것 - 나는 첫 번째 명령으로 파일에 뭔가를 인쇄하려했지만 아무것도 기록되지 않았습니다).java에서 PSExec을 실행하면 작동하지 않습니다.

Java 프로세스를 실행하는 사용자와 다른 사용자가 모두 Administrator 그룹에 있습니다.

응용 프로그램이 작동하지 않는 이유를 알 수 없습니다. 졸탄 크 시즈마 디아에 의해 XCmd와

ProcessBuilder processBuilder = new ProcessBuilder(
"c:\\pstools\\PsExec.exe", 
"-u", 
"username", 
"-p", 
"password", 
appPath, 
arg1, 
arg2); 

processBuilder.start(); 
+0

PSExec이 "실제"서버의 C# 응용 프로그램과 계속 작동합니까? Java가 관련되지 않은 경우에도 (수동으로 실행하는 경우)? 그렇다면 검토를 위해 여기에 코드와 명령을 게시해야합니다. – ziesemer

+0

예, 작동합니다. 나는 ProcessBuilder를 사용하여 명령을 실행한다. 나는 코드가 OK라고 확신한다. –

+0

음, 분명히 옳지 않은 것이있다. 코드를 게시하십시오. 그러면 우리는 해결해야 할 것이 있습니다. – ziesemer

답변

1

시도 :

내 코드입니다 http://feldkir.ch/xcmd.htm

이 문제는 시스 인 터널 포럼에서 논의 나는 remeber로 EOL 기호에 문제가 있었다되었음을 psexec에 사용.

당신은 xcmd 허용하지 않습니다 xcmd

+0

나는 시도했지만 어떻게 사용해야하는지 이해할 수 없었다. 컴퓨터 이름을 입력하라는 메시지가 나타나며 –

+0

을 psexec과 거의 같은 방식으로 사용해야하는지 이해하지 못합니다. xCmd.exe \\ computer/user : somebody/pwd : */d : d : \ test1.exe 여기서 " 컴퓨터 "는 원격 컴퓨터의 이름입니다. – npocmaka

+0

동일한 컴퓨터를 사용하면 어떻게됩니까? 나는 localhost에서 실행하고 싶다. 매번 다음 메시지가 나타납니다 : 지정한 파일을 찾을 수 없습니다. 내 명령은 다음과 같습니다. xCmd.exe \\ <컴퓨터 이름> cmd –

0

내 바이러스 스캐너에 문제가없는 것입니다.

그러나 paexec은 완벽하게 작동하는 psexec의 드롭 인 대체품입니다.

http://www.poweradmin.com/PAExec/

0

그냥 잘 작동합니다. ShellCommandString에 \\를 두 번 사용해야한다는 것을 기억하십시오. 내 동료는 내가 .. ProcessBuilder를, 그냥 잘 작동 당신이 cmd를해야 할 stirng = 당신이 가지고 있는지 stirng를 만들 것입니다 그것을 googoled이 페이지에 도착,이 질문을 나에게 온

ProcessBuilder processBuilder = new ProcessBuilder(
    "Psexec \\\\\\\\10.192.246.76 -i -u Administrator -p admin2193 cmd /c C:\\\\CI\\\\AutoTest\\\\agent_test1.bat"); 

processBuilder.start(); 
관련 문제