【问题标题】:Process.Start not startingProcess.Start 未启动
【发布时间】:2011-05-24 16:17:06
【问题描述】:

我正在尝试执行从 .cmd 批处理文件调用的第 3 方应用程序,从自托管的 WCF 服务调用。像这样:

WCF --> .cmd --> 3rd 方应用

无论出于何种原因,使用 Shell 命令都不能完全正常工作。它将调用 .cmd 文件,但第 3 方应用程序不会启动(我知道 .cmd 正在触发,因为我在 ECHO 语句之前/之后填充了一个日志文件)。如果我从资源管理器中双击 .cmd 文件,第 3 方应用程序将正常启动。所以,我想,也许可以试试我的 WCF 服务中的 Shell 命令之外的其他东西。

所以我尝试了以下代码,但它根本不会启动 .cmd 文件(回显语句未触发)。我在这里错过了什么?

Dim psi As New ProcessStartInfo("cmd.exe", "/C " & System.Configuration.ConfigurationManager.AppSettings("ExStream_CMD_File_Path"))

Dim proc As New Process()
proc.StartInfo = psi
proc.Start()
proc.WaitForExit()

app.config 文件中的路径有效(只需仔细检查)。上面的代码有什么问题吗?

谢谢, 杰森

【问题讨论】:

  • 你怎么知道它不启动。
  • 如帖子中所说,回显语句没有写入日志文件。
  • 所以 before 语句被触发但不是 after

标签: vb.net shell process cmd


【解决方案1】:

在此处查看我对问题的第二次编辑:

Simple software testing tool - VB.NET

基本上,您需要确保使用/C 执行的命令周围的引号进行双重转义

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-10-17
    • 1970-01-01
    • 2017-04-10
    • 2010-09-28
    • 2011-02-19
    • 2016-04-01
    • 1970-01-01
    相关资源
    最近更新 更多