checkprocess()
{
char
command[1024];
int
i, total = 0;
char
buffer[12], ch;
char
*filename = lr_eval_string(
"C:\\tasklist_{pTime}.txt"
);
long
file_stream;
//Run a system command to open up a DOS prompt and tasklist
//Save it to a file
sprintf
(command, "tasklist /FI \"IMAGENAME eq MobileEngine.exe\"
/FI \
"STATUS eq running\" /FO TABLE /NH > %s"
, filename);
system
(command);
// open file and check for errors opening it.
if
((file_stream =
fopen
(filename,
"r"
)) == NULL ) {
lr_error_message(
"Cannot open %s"
, filename);
return
-1;
}
//read the file stream information - place in loop.
for
(i=0; (i<NUM_CHARS) && (
feof
(file_stream) == 0); i++) {
ch =
fgetc
(file_stream);
/* Read in the next character */
buffer[i] = ch;
/* Place the new char at the end of the buffer */
}
/* Add null to end the buffer converting it to a string */
buffer[i] = NULL;
lr_output_message(
"First %d characters of file %s are \"%s\""
,
NUM_CHARS, filename, buffer);
if
(
fclose
(file_stream)){
lr_error_message(
"Error closing file %s"
, filename);
};
// Now we either have something in the buffer or not.
// We are looking for the string "MobileEngine" in this case
// Either way, delete the temp file when done.
if
(
strcmp
(buffer,
"\nMobileEngine"
) != 0) {
lr_error_message(
"The process is not running. Aborting Script..."
);
sprintf
(command,
"DEL %s"
, filename );
// lr_error_message("%s", command);
system
(command);
return
-1;
}
else
{
lr_output_message(
"The process is running. Continue..."
);
sprintf
(command,
"DEL %s"
, filename );
// lr_error_message("%s", command);
system
(command);
};
return
0;
}