2014-02-28 4 views
0

asp.net C# 4.0Asp.net에서 일괄 파일 실행 C#

텍스트 파일을 열 수있는 배치가 있습니다.

배치 파일 쿼리

ECHO OFF 
start D:\accounts\request\08__processing\0377e792-4ca9-4550-b78c-de2bdf26611f.txt 

ASp.net 코드

System.Diagnostics.Process.Start("D:\\bacthFile.bat"); 

내가 그 어떤 메모장을 열 수 없습니다 위의 코드를 실행할 때의 텍스트 file.But를 열고 파일을 일괄 더블 클릭

.

아무런 예외도 표시되지 않습니다.

이 ASP.NET에서 텍스트 파일을 읽을 수있는 잘못된 방법입니다

감사

+0

localhost에서 실행 하시겠습니까? –

+0

어떤 이유로? 그 * 사이트에서 귀하의 데스크톱에 액세스 할 수없는 다른 사용자가 실행되고 있으므로 * 당신의 데스크탑에서 열리지 ... –

+0

그냥 추측 ... 나는 ASP.NET 코드가 다른 사용자 계정 (아마도 비대화 형 로그인과 함께)을 사용하기 때문에 대화 형 세션에서 아무 일도 일어나지 않습니다. – jpw

답변

0

을 제발 도와주세요, 당신은 당신이 어디에서 ASP.NET 할 수있는 곳 읽을 필요 파일을 System.IO를 사용하여 둘 필요가 그들에게 가라. 예를 들면 .. App_data. 즉, 잘못된 길을 만드는 방법입니다. IIS는 보이지 않는 가상 창에서 실행됩니다. 이는 서비스입니다. UI를 표시하는 서비스를 얻는 방법이 있습니다. 어떻게 잊을 수 있습니다. 어쨌든 서비스를 시작한 후에 이러한 창을보고 UI를 표시하는 데 RDP를 서버에 적용해야합니다 (이 트릭은 IIS에서도 작동하지 않을 수도 있음).

다음으로 주석 작성자가 지적한 것처럼 IIS에서는 자신의 자격 증명 집합과 다른 자격 증명 집합 (IIS의 버전에 따라 달라짐)이 있습니다. 어떤 경우에도 액세스가 제한되고 다소 샌드 박스 처리됩니다. web.config에서 가장 (impersonation) 및 Windows 인증을 설정하면 자격 증명을 사용하여 실행되도록 요청할 수 있습니다.

다음으로 웹 호스트가 중간 신뢰로 실행되는 경우 asp.net appdomain에서 임의의 응용 프로그램을 시작할 수 없습니다.

마지막으로, 이것이 작동 할 수있는 유일한 방법은 앱이 항상 casinni (Visual Studio 개발 서버)를 사용하여 로컬로 실행되는 경우입니다.하지만이 경우에는 콘솔 앱을 사용하는 대신 여러 가지 작업을 단순화 할 수 있습니다. asp.net 당신이 정말로 HTML 템플릿을 필요로하지 않는 한 출력을 위해 말하십시오.