long i, li_run, li_type, ll_total_rows
string ls_filename
errorReturn er
if gnv_datatransfer.inv_Intf.ib_running then
return
end if
if gnv_datatransfer.ib_stop then
gnv_datatransfer.inv_Intf.of_all_files_processed("Stopped", false)
messagebox("User Stopped", "File processing stopped.", Information!)
return
end if
gnv_datatransfer.inv_Intf.il_dw_file_row++ //variable starts at zero
ll_total_rows = gnv_datatransfer.iwin.dw_files.rowCount()
if gnv_datatransfer.inv_Intf.il_dw_file_row > ll_total_rows then
gnv_datatransfer.inv_Intf.of_all_files_processed("Past rowcount", true)
return
end if
i = gnv_datatransfer.inv_Intf.il_dw_file_row
ls_filename = gnv_datatransfer.iwin.dw_files.getItemString(i, "filename")
gnv_datatransfer.inv_Intf.of_microhelpmsg("Running file "+ls_filename+" ....", true)
invo_cst_exe_call_thread.POST of_execute_sql(ls_filename, gnv_datatransfer.inv_Intf)
long ll_CreationFlags, ll_wait, ll_ret, ll_close, ll_last_error
long ll_exit_code, ll_exit_call_ret, ll_false=0
string ls_CurDir, ls_Null
SetNull(ls_Null)
CONSTANT long STARTF_USESHOWWINDOW = 1
CONSTANT long CREATE_NEW_CONSOLE = 16
CONSTANT long NORMAL_PRIORITY_CLASS = 32
CONSTANT long INFINITE = -1
str_StartupInfo lstr_Start
str_Processinformation lstr_PI
lstr_Start.dwFlags = STARTF_USESHOWWINDOW
lstr_Start.wShowWindow = 6
// Show Window Normal. 6 for Minimize.
lstr_Start.cb = 72
// Specifies the size, in bytes, of the StartUpInfo structure
ll_CreationFlags = CREATE_NEW_CONSOLE + NORMAL_PRIORITY_CLASS
ll_ret = CreateProcessA( ls_Null, as_exe, 0, 0, ll_false,
ll_CreationFlags, 0, ls_CurDir, lstr_Start, lstr_PI )
ll_wait = WaitForSingleObject( lstr_PI.hProcess, INFINITE )
ll_close = CloseHandle(lstr_PI.hProcess)
if ll_wait = 0 then return 1
Return ll_wait