0

我必须在 cmd 窗口中启动一个进程。但是在所示的情况下,由于某些错误 cmd 窗口只是闪烁,我看不到会发生什么。如果 cmd 窗口在某些按键或类似操作之前一直打开,那将是最好的。

Dim q As String = Chr(34)
Dim p As New Process
With p.StartInfo
      .FileName = q & whereis7z & "\7z.exe" & q
      .Arguments = " e " & q & tempArch & fNameStr & q & " -y"
      .WindowStyle = ProcessWindowStyle.Normal
      .CreateNoWindow = False
      .WorkingDirectory = tempArch
       Debug.Print(.FileName & .Arguments)
End With
p.Start()
If p.ExitCode <> 0 Then
       MsgBox(p.ExitCode, MsgBoxStyle.Critical)
End If

这里有什么方法可以让 cmd 窗口保持打开状态,直到按键来查看我的“StartInfo”有什么问题,因为“ExitCode”还不够。

4

2 回答 2

1

您应该直接执行 cmd.com 应用程序而不是您的程序。

如果您从开始菜单“cmd /k dir”尝试,您将收到目录列表并且窗口将保持打开状态。

我认为您必须在参数(参数)中传递您的应用程序

希望这有助于塞尔

于 2012-12-04T23:34:47.953 回答
1

或者,您可以重定向窗口的标准输出以捕获程序输出。

p.StartInfo.RedirectStandardOutput = True

然后只需读入程序输出的内容,您就可以自己显示它,

Dim Output as String = p.StandardOutput.ReadToEnd
于 2012-12-05T00:36:34.470 回答