2011-08-24 6 views
1

새 프로세스를 만들 때 프로세스를 시작하기 전에 StartInfo를 제공 할 수 있습니다. 그러나 어떻게하면/output의 입력을 매개 변수에 제공 할 수 있습니까? 출력은 File.WriteAllLines()를 통해 명령의 출력으로 얻을 수 있습니다. C# 입력 및 출력 파일 처리

하지만 이제 다음은 나 달성해야합니다

C:\Windows\System32\inetsrv\appcmd.exe add site /in < iisSite.xml 

그러나 우리는 StartInfo의 인수 방법으로

add site /in < iisSite.xml 

을 줄 때 APPCMD 명령어는이 프로그램에 대한 매개 변수입니다 생각한다. 명령 프롬프트 그것을 할 것입니다 그래서 우리가 어떻게 든 같은 분석을 필요로이 오류를

Failed to process input: The parameter  

    'd:\import\iisSite.xml' must begin with a/or - (HRESULT=80070057). 

를 참조 .

가능할 수있는 것은 ReadAllLines과 같은 것으로 입력으로 사용하지만 더 좋은 해결책이 될 수 있습니다. 제안 사항이 있으십니까?

미리 감사드립니다.

답변

0

<을 사용하는 것은 방법이 아닙니다. 예를 들어 지금>

를 사용하여 그 명령 프로세서 cmd의 기능처럼는 Console

+0

없음 출력은 어려운 부분이 아니다. 매개 변수로 xml을 지정하는 것이지만> 및 <는 appcmd의 매개 변수로 처리됩니다. 명령 프롬프트가 처리 할 수있는 자체 명령이 아닌 왜 사이트를 추가하고 내보내려고해도 정보가 없습니다. 정보가 해당 명령에 포함되어야합니다. –

1

스트림 재에 인쇄 된 것처럼 appcmd.exe add site /in > iisSiteExport.xml

을하고 프로그램이 모든 출력을 뱉어. 당신이 그것을하고 싶다면 당신은 그것을 호출하고 당신의 주장을 보낼 필요가 있습니다. EDIT2 and EDIT3 in this post을 참조하십시오.

편집

And direct from Raymond

+0

트릭을 수행해 주셔서 감사합니다! –