Vb.net 带CMD选项的WaitForExit/";

Vb.net 带CMD选项的WaitForExit/";,vb.net,cmd,Vb.net,Cmd,我用VB编写了运行CMD命令的代码,其中输出存储到文本文件中。然后程序需要此输出,因此程序需要等待CMD命令完成后才能继续。我正在使用 Dim wait As Process = Process.Start(psi) wait.WaitForExit() 为了确保在代码继续之前退出流程,但现在我已经这样做了,流程信息中的“/c”选项不再起作用。流程信息如下: Dim psi As New ProcessStartInfo With { .FileName = "Cmd", .A

我用VB编写了运行CMD命令的代码,其中输出存储到文本文件中。然后程序需要此输出,因此程序需要等待CMD命令完成后才能继续。我正在使用

Dim wait As Process = Process.Start(psi)
wait.WaitForExit()
为了确保在代码继续之前退出流程,但现在我已经这样做了,流程信息中的“/c”选项不再起作用。流程信息如下:

Dim psi As New ProcessStartInfo With {
    .FileName = "Cmd",
    .Arguments = "/c " & completedCom & " > " & oPath
}

我不明白为什么“/c”选项会突然失败。

空格就是一个问题的例子。在命令周围使用引号可以帮助您完成以下操作:

Dim psi As New ProcessStartInfo With {
    .FileName = "Cmd",
    .Arguments = "/c """ & completedCom & """ > """ & oPath & """"
}

调用process的首选方法是直接调用exec,而不是启动cmd。在这种情况下,您必须异步捕获标准输出并将其写入文件。

不确定引号是否已关闭或是什么,但现在文本文件仍然为空。如何显示其余代码…您如何检查应用程序中的错误?