【问题标题】:Running command line app on asp.net server在 asp.net 服务器上运行命令行应用程序
【发布时间】:2011-07-20 09:19:14
【问题描述】:

我正在尝试让 asp.net 在服务器上运行控制台应用程序。我可以通过以下方式运行它:

System.Diagnostics.ProcessStartInfo info = 
new System.Diagnostics.ProcessStartInfo(filePath, "");
Process processChild = Process.Start(info); 
info.CreateNoWindow = false;

我需要的是控制台应用程序窗口出现。目前它只是作为后台进程运行。

有什么想法吗?这甚至可能吗?

【问题讨论】:

  • 你想在哪里看到控制台窗口?在服务器上?请记住,您正在使用 ASP.NET 执行此操作,并且一切都在服务器中进行,您在客户端计算机上什么也看不到。
  • 是的,这就是我想要的(服务器)。控制台应用程序将运行很长时间,我希望能够登录到服务器并检查其状态。我意识到我可以在 asp 中使用输出,但我宁愿只打开控制台窗口。
  • 已将 CreateNoWindow = false 放在 Process.Start 之前,但仍不显示。

标签: asp.net iis-6 console-application


【解决方案1】:

很好,您在将 CreateNoWindow 设置为 false 之前开始了该过程。改为这样做:

System.Diagnostics.ProcessStartInfo info = 
new System.Diagnostics.ProcessStartInfo(filePath, "");
info.CreateNoWindow = false;
Process processChild = Process.Start(info); 

【讨论】:

  • ..哦,是的。刚试了下,还是打不开。不过可以在任务管理器中看到。
  • 如果您在任务管理器中看到它,该进程显示的用户名是什么?可能您以其他用户身份登录,但没有获得该会话。
  • 啊,我明白了。用户是 IIS 应用程序。谢谢您的帮助。 This guide 展示了如何指定用户,如果其他人需要知道的话。
  • @Simon:对。这个问题需要一点观察。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-01-03
  • 2014-03-02
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多