Go Premium for a chance to win a PS4. Enter to Win

x
?
Solved

Need help!  DOS Batch file to wait for another program to finish

Posted on 2004-09-09
8
Medium Priority
?
600 Views
Last Modified: 2008-01-09
I need a DOS batch file to do such:  start at 5am in the morning, but wait for another program to finish, when the other program finishs, if the status of the other program is a success, then pass a success output, otherwise pass a failure out.
Could someone drop a sample code to help out?
Thanks.
0
Comment
Question by:bob001
  • 2
  • 2
  • 2
  • +2
8 Comments
 
LVL 3

Assisted Solution

by:Sasho
Sasho earned 160 total points
ID: 12019310
call another_program.exe
if errorlevel 1 goto error
if errorlevel 0 goto no_error

:error
echo Got an error
goto end

:no_error
echo It's all good!
:end
0
 

Author Comment

by:bob001
ID: 12020378
This would work.  Do you know any other mechanism of checking the status of another program other than running it within the script, such as passing a flag in a enviroment variable?
0
 
LVL 8

Expert Comment

by:Here2Help
ID: 12021343
Hey.

Try the code below to wait for a program to terminate before processing rest of batch.

Start /wait x:\path\file.


For help with start use the Start /?  switch.
0
Nothing ever in the clear!

This technical paper will help you implement VMware’s VM encryption as well as implement Veeam encryption which together will achieve the nothing ever in the clear goal. If a bad guy steals VMs, backups or traffic they get nothing.

 

Author Comment

by:bob001
ID: 12021498
Here2Help,
If I use start, how do I know the return status of the program I wait for?
0
 

Accepted Solution

by:
HandsomeBob earned 80 total points
ID: 12034032
you mean the errorlevel right?

After starting the program, like so:

start another_program.exe
set err=%errorlevel%

now you just do whatever you want with the %err% variable.

Typically, if it's successful, the %err% variable would be 0, else, and error. You can do something dependant on the errorlevel, like so:

if %err%==0 (
   :: No error. Do whatever ...
) ELSE (
   :: An error. Do whatever ...
)

Or, if each process would envolve using more scopes, then use this:

if %err%==0 goto :NOERROR

:: Do whatever here for if there is an error.
goto :EOF

:NOERROR

:: Do whatever here for if there is no error.

:EOF
exit /b


Best of luck,
-B
0
 
LVL 39

Expert Comment

by:BillDL
ID: 12039156
To assist with the actual scheduling of the batch file, Eric Phelps created a simple command line scheduler.

Download it, unzip it to any folder, and read the "readme.txt" file for the syntax.  It uses an .ini file that can easily be tailored to suit your needs.

http://www.ericphelps.com/schedule/schedule.zip
0
 

Expert Comment

by:HandsomeBob
ID: 12039717
Good to see you around again Bill :o)  - You been hiding? :P
0
 
LVL 39

Expert Comment

by:BillDL
ID: 12040157
Nope, I hide most of the time in the place I know best - Windows 98 topic area, but have the occasional foray into other areas to see if I know enough to make any sensible and useful suggestions  :-)
0

Featured Post

NFR key for Veeam Agent for Linux

Veeam is happy to provide a free NFR license for one year.  It allows for the non‑production use and valid for five workstations and two servers. Veeam Agent for Linux is a simple backup tool for your Linux installations, both on‑premises and in the public cloud.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Using dates in 'DOS' batch files has always been tricky as it has no built in ways of extracting date information.  There are many tricks using string manipulation to pull out parts of the %date% variable or output of the date /t command but these r…
YESTERDAY YESTERDAY.BAT is inspired by a previous article I wrote entitled: TOMORROW.BAT (http://www.experts-exchange.com/OS/Microsoft_Operating_Systems/MS_DOS/A_4196-Advanced-Batch-File-Programming-TOMORROW-BAT.html). The crux of this batch f…
Exchange organizations may use the Journaling Agent of the Transport Service to archive messages going through Exchange. However, if the Transport Service is integrated with some email content management application (such as an anti-spam), the admin…
Want to learn how to record your desktop screen without having to use an outside camera. Click on this video and learn how to use the cool google extension called "Screencastify"! Step 1: Open a new google tab Step 2: Go to the left hand upper corn…

886 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question