关于如何控制vb程序,与外部程序协调同步的问题
我在vb的程序的一个处理段中
用shell函数调用了外部的arj.exe
对一个压缩包进行解压
程序中后面的段,要用到解压后的新文件。
例如:
'arj解压
Dim FileString As String
Dim Result As Long
FileString = GetAPPPath() & "arj.exe e -y " & usr_tempfile & " " & usr_tempdir
Result = Shell(FileString, vbHide)
'If Result = 0 Then '解压失败
' 'end
'End If
'....
'下面的这里的程序要用到解压后的文件
'....
可是,这个shell函数似乎是异步调用的,往往文件还没有解出来,程序已经执行到了下面了
结果得不到解出来的文件,从而导致程序失败。
我想问一下有没有方法解决这个问题?谢谢!
p.s.我目前采用的方法是在中间用
sleep(1000)
睡眠了1秒钟
可是,如果要解压的压缩包如果很大,势必还要延长睡眠时间,可是太长,影响程序速度
请各位大虾出手!