如何在后台运行某些操作并显示进度条

时间:2014-01-16 02:04:10

标签: vb.net file-io progress-bar

所以我得到的是它看看文件是否在那里然后打开它我然后想要保存文件作为字符串作业我想在后台运行它也没有任何窗口弹出和也许会显示进度条?

Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click
    Dim job As String
    Dim wo As String
    Dim fpath As String

    fpath = "U:\Output\REV B Template Program Info.xlsm"
    job = InputBox("Please enter the job number.")
    wo = InputBox("Please enter the work order number.")

    If My.Computer.FileSystem.FileExists(fpath) Then
        MsgBox("File found.")
        Process.Start(fpath)

        'I then wanna Save As the sting job
        'I would also like to do it in the back ground and not have it show up
        'and also show a Progress Bar if we can.
    Else
        MsgBox("File not found.")
    End If

End Sub

1 个答案:

答案 0 :(得分:0)

就进度而言,您无法显示无法衡量的进度。您的外部流程不会报告进度,因此您无法对其进行测量,因此您无法显示它。您可以考虑将ProgressBar的Style设置为Marquee,以指示某些事情正在发生但不是在哪里。

如果您想知道进程何时完成,可以在进程上调用WaitForExit,如果您不介意阻止当前线程或者处理其Exited事件。

要配置新进程的运行方式,请创建ProcessStartInfo对象,对其进行适当配置,然后将其传递给Process.Start调用。