从asp.net网页在服务器端运行exe

从asp.net网页在服务器端运行exe,asp.net,vb.net,server-side,Asp.net,Vb.net,Server Side,我需要运行位于aspx网页同一文件夹中的服务器上的exe 我在网页中有一个按钮,单击该按钮将执行exe并打开应用程序窗体。 这是aspx页面中按钮背后的代码 Protected Sub RunBtn_Click(sender As Object, e As EventArgs) Handles RunBtn.Click Dim process1 As New System.Diagnostics.Process() process1.StartInfo.WorkingDirec

我需要运行位于aspx网页同一文件夹中的服务器上的exe
我在网页中有一个按钮,单击该按钮将执行exe并打开应用程序窗体。

这是aspx页面中按钮背后的代码

Protected Sub RunBtn_Click(sender As Object, e As EventArgs) Handles RunBtn.Click
    Dim process1 As New System.Diagnostics.Process()
    process1.StartInfo.WorkingDirectory = Request.MapPath("~/")
    process1.StartInfo.FileName = Request.MapPath("App.exe")
    process1.Start()
End Sub
它在本地主机上工作得非常好。但是当我上传并点击按钮时,什么也没发生
这一页就在那里。没有错误。exe没有出现。没有什么!!


以前可能有人问过我,但我没有找到任何解决办法。请帮帮忙。

你不能在网站上运行这样的软件。该程序可能是在服务器上启动的,它就是在服务器上出现的(如果您有足够的权限这样做的话)


不确定您试图运行的是哪种软件,但您必须将其转换为web应用程序。

当您使用process.start时,它将从启动它的进程的上下文中启动新进程。在asp.net中,这将是web服务器。当您从VisualStudio进行调试时,您可能正在使用开发Web服务器,该服务器在您的用户帐户下运行。在“真实”web服务器上运行时,它将作为服务在IIS下运行。默认情况下,IIS在一个完全不允许与桌面交互的受限权限帐户下运行。应用程序可能作为后台进程运行,但不允许显示UI


要使其正常工作,最好的办法是在web服务器上有一个单独的进程来轮询系统上的数据库或文件,这会触发可执行文件的运行。您可以通过文件传递参数和其他选项。

您可以在localhost上看到它,因为您在浏览站点的同一台计算机上运行该站点(您是客户机和服务器)。这真是糟糕的设计。您应该通过网站以外的其他代码在服务器上执行EXE。。。