2014-01-15 3 views
2

몇 가지 명령을 호출하는 방법을 알고있는 간단한 asp.net 페이지가 있습니다.Process. 사용자 컴퓨터에서 시작

예를 들어, 내가 특정 매개 변수와 함께 mstsc.exe를 호출 : 난 내 로컬 컴퓨터에서이 코드를 사용하는 경우

Process.Start("mstsc.exe", "/v:" + serverToConnect); 

가 잘 작동합니다.

다른 서버의 asp.net 페이지에이 코드를 업로드하고이 명령을 호출하는 버튼에 을 클릭하면 아무 일도 일어나지 않습니다.

내가 어떻게 든이 버튼을 클릭 한 사용자의 컴퓨터에서이 명령을 호출하는 페이지를 말해야한다고 생각합니다.

가장 좋은 방법은 무엇입니까?

감사합니다.

+0

웹 응용 프로그램의 경우에는 좋지 않습니다. 당신이 달성하려고하는 것은 브라우저에 추가 된 ActiveX 컨트롤을 사용하여 수행 할 수 있다고 가정합니다 (보안이 RDP를 허용하는지 여부는 확실하지 않습니다). 그러나 모든 계정에 의해 병이 들었습니다. – NoviceProgrammer

답변

1

웹 페이지에서이 코드를 실행하면 프로세스가 서버에서 실행됩니다. asp.net 페이지에서 로컬 컴퓨터에서이 코드를 실행할 수 없습니다.

ASP 페이지의 모든 .NET 코드가 서버에서 실행됩니다.

3

불가능합니다.

초를 멈추고 어떤 웹 사이트가 임의로 사용자의 컴퓨터에서 응용 프로그램을 실행할 수있는 경우 havoc이 인터넷에서 풀린다 고 상상해보십시오. 혼자 우연의 일치에 의해 당신이 컴퓨터 테스트 할 때, 때문에 로컬 컴퓨터에서 작동

모두 서버 클라이언트입니다. 동작은 여전히 ​​동일하며 응용 프로그램은 서버에서 실행됩니다. 다른 서버에 게시하면 해당 동작이 계속됩니다 ... 응용 프로그램이 서버에서 실행됩니다.

달성하려는 목표에 관계없이 가능한 방법은 아닙니다. 사용자 컴퓨터에 클라이언트 측 응용 프로그램을 설치하려는 것처럼 들리지만 이는 ASP.NET 웹 응용 프로그램과 매우 다릅니다.

+0

그래 ... 고맙습니다. 문제. 사용자 이름과 암호 또는 기타 안전한 방법으로 해결할 수있는 방법이 아닙니까? – FelProNet

+0

@DevTraveler : 해당 컴퓨터가 일반적으로 기본적으로 발생하지 않는 연결을 노출하는 경우에만. 여전히 사용자의 컴퓨터에 로컬로 실행되는 코드가 있어야합니다. 그러면 사용자가 무언가를 설치하게하는 사각형으로 되돌아갑니다. – David

관련 문제