2014-01-15 3 views
2

У меня есть простая страница asp.net, которая знает, как вызвать некоторые команды.Process.Start с пользовательской машины

Например, я называю mstsc.exe с определенными параметрами:

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

Когда я использую этот код на моей локальной машине он работает отлично.

Когда я загружаю этот код на страницу asp.net на другом сервере и пытаюсь нажать на кнопку вызова этой команды, ничего не произошло.

Думаю, мне нужно как-то сообщить странице, чтобы вызвать эту команду с машины пользователя, который нажал эту кнопку.

Вы знаете, что это лучший способ сделать это?

Спасибо.

+0

Это не очень удобно для веб-приложения. Я предполагаю, что то, что вы пытаетесь достичь, может быть сделано с помощью элемента управления ActiveX, который добавляется в браузер (не уверен, что даже тогда безопасность разрешит RDP), но по всем счетам это не рекомендуется – NoviceProgrammer

ответ

1

Выполнение этого кода с веб-страницы приведет к выполнению процесса на сервере. Невозможно запустить этот код на локальном компьютере с страницы asp.net.

Весь код .NET на странице asp выполняется на сервере.

3

Невозможно.

Остановитесь на секунду и представьте havoc развязанный в Интернете, если какой-либо сайт может произвольно выполнять приложения на любом компьютере пользователя.

Он работает на локальном компьютере, так как, по только совпадения, когда вы проверяете это ваша машина как сервер и клиент. Поведение все тот же, приложение работает на сервере. Когда вы публикуете его на другом сервере, это поведение продолжается ... Приложение запускается на сервере.

Что бы вы ни пытались выполнить, это не осуществимый подход. Похоже, вы хотите установить клиентское приложение на компьютеры пользователей, что совсем другое, чем веб-приложение ASP.NET.

+0

Да, спасибо .. Я догадался, что это проблема. Разве это не способ сделать это по имени пользователя и паролю или другим безопасным способом? – FelProNet

+0

@DevTraveler: Только если эта машина предоставляет эту возможность подключения, что обычно не происходит по умолчанию. Это по-прежнему требует, чтобы у вас был код, выполняемый локально на компьютере пользователя, что возвращает нас к квадрату, когда пользователь что-то устанавливает. – David

Смежные вопросы