CSharp - Process.Start() 一直运行我的. exe 作为后台进程 MVC ASP.NET

  显示原文与译文双语对照的内容
0 0

这个问题已经有了如下答案:

首先我检查了一个答案,然后找到一个答案,但是我的问题是在后台运行他们的过程。

在控制器上输入了以下代码,在单击按钮时将启动该进程:

string fileLocation = @"C:somefolderanotherFolder...application.exe";
 ProcessStartInfo oStartInfo = new ProcessStartInfo();
 oStartInfo.FileName = fileLocation;
 oStartInfo.UseShellExecute = false;
 oStartInfo.CreateNoWindow = true;
 oStartInfo.WindowStyle = ProcessWindowStyle.Normal;
 oStartInfo.CreateNoWindow = false;
 var process = new Process { StartInfo = oStartInfo, EnableRaisingEvents = true };
 process.Start();

现在我已经经运行了代码,它正在执行 exe,因这里它会在打开任务管理器时显示。 但是我似乎无法在前台执行这个程序,所以用户可以做他们需要做的事情。

*Extra 信息

  • 我running的问题都是这样的,因为exe与项目的web部分相同,但是这个问题是我必须去的,但问题是我必须在前台运行任务管理器,这是我需要运行的另一个主要原因。

  • Visual Studio 2013表示网站

  • Entity Framework
  • MVC ASP.NET 网络项目

任何帮助都很有用 !

时间:原作者:4个回答

0 0

请看这里:Process.Start 方法:

ASP.NET网页和服务器控件代码在Web服务器上的ASP.NET辅助进程的上下文中执行。 如果在 ASP.NET 网页或者服务器控件中使用Start方法,则新进程将在具有受限权限的Web服务器上执行。 此进程不能在与客户端浏览器相同的上下文中启动,并且不能访问用户桌面。

因这里,流程将运行服务器端,而不是客户端,也将在 ASP.NET 工作流程( w3wp.exe ) 中运行。

原作者:
...