2012-03-03 5 views
0

매일 예약 된 시간에 실행되는 서버에 exe가 있지만, 필요할 경우 하루 종일 수동으로 exe를 시작할 수있는 방법을 제공하기를 원합니다.ASP.Net을 통해 서버 측 EXE를 실행하십시오.

내가 ASP.Net 페이지에 다음 코드 뒤에 시도

:

System.Diagnostics.Process theProcess = new System.Diagnostics.Process(); 
theProcess.StartInfo.FileName = "C:\\inetpub\\wwwroot\\MyWebsite\\MyProcessor.exe"; 
theProcess.Start(); 

을하지만 난 서버에 아무 변화가없고, 오류, 어떤 과정을이 코드에 할당 된 버튼을 클릭하지 않을 때 . 아무것도. 웹 브라우저가 페이지를 다시로드하려고 시도하는 중입니다.

+0

로컬로 실행하면 작동합니까? 코드를 디버깅 했습니까? try/catch를 사용하여 코드를 둘러싸고 던져진 예외를 catch하거나 로그에 남기십시오. 각 응용 프로그램 풀이 어떤 계정에서 실행됩니까? 실행 파일에 액세스 할 수 있습니까? –

+0

ASP .Net에서 exe를 실행하는 것은 가능하지만 특정 조건 하에서 실행됩니다. 또한 IIS 및 ASP .Net의 버전을 확인하는 데 도움이되며 서버에 대한 모든 액세스 권한이있는 경우 –

+0

예, 응용 프로그램이 문제없이 로컬로 실행됩니다. 그것은 몇 주 동안 예정된 작업으로 지금 실행되었습니다. 계정 및 사용 권한 측면에서 볼 때, 웹 사이트 파일의 나머지 부분과 완전히 동일한 사용 권한을가집니다. –

답변

0

해당 서버에 대한 액세스 권한이있는 경우 해당 응용 프로그램을 시작하는 대신 항상 실행하고 DB에서 플래그를 확인하여 원하는 작업을 실행하십시오. 원하는 작업 ... 웹 응용 프로그램의 단추로 플래그를 변경할 수 있습니다 , 그러면 IIS와 응용 프로그램이 분리됩니다.

관련 문제