.net - 从 Web 应用程序异步运行可执行文件(安全解决方案)

标签 .net asp.net iis executable

在 IIS 托管的 Web 应用程序下运行外部 EXE 或 BAT 文件的 System.Diagnostics API 有哪些替代方案?
我想从我的 ASP.NET-MVC Web 应用程序运行外部 EXE 程序。我不需要等到程序退出。我只想启动程序。执行可能需要一些时间或者它可能会崩溃,所以我想以这样的方式将它与 IIS 分开运行,即 Web 应用程序只触发它的执行。

最佳答案

我曾经做过的是创建一个 WebService(该功能无论如何都封装在一个中)并将方法指定为“OneWay”,这基本上是一个“Fire and Forget”。

http://msdn.microsoft.com/en-us/library/ms181848(v=vs.80).aspx

您的请求不需要来自服务器的响应。

当然,您需要编写自己的“通知”逻辑来让用户知道任务的成功/失败。

正如@stefano 在评论中提到的,您可以使用诊断。

http://msdn.microsoft.com/en-us/library/system.diagnostics.process.start.aspx

由于它将在 OneWay 设置中,因此您的 Web 应用程序不会在发出 HttpResponse 之前等待应用程序完成运行。

关于.net - 从 Web 应用程序异步运行可执行文件(安全解决方案),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2630387/

相关文章:

C#:无法绕过缓存 (WebClient)

c# - "value cannot be null parameter name: key"

iis - Window 7 中 IIS 7.5 管理器的操作面板中缺少绑定(bind)功能

asp.net - 使用 web.config 禁止用户代理

javascript - 捕获浏览器关闭事件

Powershell 应用程序池设置周期性重启语法

javascript - Uncaught Error : [$http:badreq] Http request configuration url must be a string (AngularJS)

c# - Orchard CMS 部分放置

c# - 搜索数百万文件名的最佳数据结构?

javascript - 在 HTML 输入字段中禁用撤消/重做