Ciao
Premessa: non sono esperto di VB6 e saprei fare quello che chiedi tu in vb.net, che permette di far partire e chiudere i processi..
Cercando su internet ho trovato questo codice:
codice:
Public Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long
Public Declare Function WaitForSingleObject Lib "kernel32" (ByVal hHandle As Long, ByVal dwMilliseconds As Long) As Long
Public Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long
Private Const INFINITE = &HFFFF ' Timeout infinito
Private Const SYNCHRONIZE = &H100000
esecuzione di un programma con attesa della chiusura
process_id = Shell("Programma\da\eseguire", vbNormalFocus)
DoEvents
process_handle = OpenProcess(SYNCHRONIZE, 0, process_id)
If process_handle <> 0 Then
WaitForSingleObject process_handle, INFINITE
CloseHandle process_handle
End If
Il programma qua fa altro oltre ad aprire il file... Però l'idea è che c'è la variabile process_handle che ti può dire se il processo (il file è aperto) è in esecuzione oppure no. E poi con close lo termini..