2013-08-05 4 views
0

C# windows form application에서 코드를 실행하려고합니다.C#에서 명령을 실행하는 방법은 무엇입니까?

string cmdCode = "/C mogrify -crop 590x389+116+102! D:\\Backup\\Images\\*.TIF"; 

System.Diagnostics.Process.Start("CMD.exe", cmdCode); 

하지만 그것은 무엇을해야합니까?

코드는 명령 줄에 입력 할 때 완벽하게 작동합니다. 이미 경로를 변경하려고했습니다. 나는 MyApp.exe의 파일로 TIF 파일을 배치하고

cmdCode = "/C mogrify -crop 590x389+116+102! *.TIF"; 

성공하지 .. 그것은 매우 빠르게 검은 명령 PROMT을 보여줍니다으로 cmdCode을 변경하고 그것은 사라됩니다.

나는 코드를 파일에 넣고 확장자 .bat를 사용하여 실행했지만 여전히 성공하지 못했습니다 !! 어떤 제안?

감사

답변

2

/C 옵션을/K로 바꾸어보십시오. 그래도 문제가 해결되지는 않지만 명령 프롬프트가 사라지지 않아야하며 프롬프트에서 오류가 표시되는지 확인할 수 있어야합니다.

CMD.exe에 전달할 PATH가 어떤 이유에서든 기본적으로 사용되는 PATH와 다를 수 있습니다./K 옵션을 사용하여 cmd.exe를 시작한 후에는 echo % PATH % 명령을 실행하여 얻은 결과를 볼 수 있어야합니다.

2

는 제거 "... 수확물"를 cmd.exe 부분을 제거하고 대신 mogrify.exe에이 경로를 배치하고와 매개 변수를 시작/C

당신이 경로 이름을 따라 통과하는 경우 경로를 따옴표로 묶어야하는 공백이 포함되어 있으므로 매개 변수는 다음과 같이 표시됩니다.

"-crop \"590x389 + 116 + 102! \ "\" "+ YourPathHere +"\ "";

+0

그것은 작동하지 않습니다 .. 예외를 던졌습니다 – akd

+0

@akdurmus 예외는 무엇입니까? –

관련 문제