我在我的vb应用程序中有这个代码:
For Each fi In aryFi
If System.IO.File.Exists(fi.FullName) = True Then
TextBox2.Text = TextBox2.Text + "File: " + fi.Name + vbCrLf
TextBox2.Refresh()
TextBox2.Text = TextBox2.Text + "Printing File" + vbCrLf
TextBox2.Refresh()
' Create object, passing in text
Dim psi As New ProcessStartInfo
psi.UseShellExecute = True
psi.Verb = "print"
psi.WindowStyle = ProcessWindowStyle.Hidden
psi.FileName = fi.FullName
Dim p = Process.Start(psi)
TextBox2.Text = TextBox2.Text + "Moving File" + vbCrLf
TextBox2.Refresh()
System.IO.File.Move(My.Settings.FolderPath + "\" + fi.Name, My.Settings.FolderPath + "\COMPLETED\" + fi.Name)
TextBox2.Text = TextBox2.Text + vbCrLf + vbCrLf + "------------------------------------------------------------" + vbCrLf
TextBox2.Refresh()
p.WaitForExit()
End If
Next
它遍历文件目录并单独打印每个文件。
打印完文件后,会将其移动到另一个目录中,以便不再处理。
似乎在文件移动之前它正在运行下一个循环,所以它试图一遍又一遍地打印同一个文件
我怎样才能阻止这种情况发生