SET CLASSLIB TO Process oProcess = CREATEOBJ('API_AppRun','NOTEPAD.EXE AUTOEXEC.BAT','C:\','NOR') *Run the application and don't wait to terminate * parms are the command line, the directory to run from, and the Window state oProcess.LaunchApp() *Check the exit status; 259 means still running IF oProcess.CheckProcessExitCode() = 259 wait window 'Still running' ELSE wait window 'Terminated with a '+alltrim(str(oProcess.CheckProcessExitCode())) ENDIF ? oProcess.KillProc() oProcess = '' * You can have multiple processes running at once oProcess1 = CREATEOBJ('API_AppRun','REGEDIT','C:\','NOR') oProcess2 = CREATEOBJ('API_AppRun','NET USE /? | MORE') oProcess1.LaunchApp() oProcess2.LaunchApp() oProcess1 = '' oProcess2 = '' * Run them both and wait on the last to terminate oProcess1 = CREATEOBJ('API_AppRun','NOTEPAD.EXE AUTOEXEC.BA','C:\','NOR') oProcess2 = CREATEOBJ('API_AppRun','NOTEPAD.EXE CONFIG.SY','C:\','MIN') oProcess1.LaunchApp() oProcess2.LaunchAppAndWait()You can run batch files as well as .EXE and .COM files with no problem.