user1407668 user1407668 - 12 days ago 7
Java Question

Batch File runs manually but not in task scheduler

I have a batch file, which will search for a java process and kill the same.
The script works fine when the bat file is run on the command prompt. But when I tried to execute in task scheduler, it is not working.

I have selected the option "Run whether the user is logged in or not"

My batch file is as given below:

for /F "tokens=1*" %%i in ('jps -lv^|C:\Windows\System32\find.exe "TaskTest"') do (C:\Windows\System32\taskkill.exe /F /PID %%i )


I have also tried whatever is mentioned in this link
Batch runs manually but not in scheduled task

Any other suggestions please.

Note: I have another batch file to archive files which runs properly in task scheduler with the same user account

Answer

Finally I was able to figure out the problem. It worked when I unchecked the option "Start only when the computer is on AC power' under 'Conditions' tab in task properties, combined with the other suggestion of using the 'Program' as

C:\Windows\System32\cmd.exe

and 'Add Arguments' as

/c C:\mypath\myFile.bat

and 'Start in' as

C:\mypath\

This worked when the option 'Run whether user is logged in or not' is selected with 'Run with highest privileges' checked.

Thanks for all those who have spend time to analyse this :)