Change your batch to something like this:
@ECHO ON
echo Before php %TIME% %DATE% >> C:\temp\task.log
C:
Cd \www2
C:\PHP5.3\php.exe -f "C:\www2\cron.php" >> C:\temp\task.log
echo After php %TIME% %DATE% >> C:\temp\task.log
As long as you have the echo command and the call of the php interpreter on a single line this only output a meaningless text to the screen.
The first echo is there to help you diagnose problems: if the scheduled tasks is being called you will see this logged in task.log.
To make sure that the working directory is set to C:\www2 (cron.php will look for files there unless they get addressed with a full path) we change to that directory before running php.
In case php prints any error messages or information we redirect that output to the same log because otherwise you will not see this. You should delete that log from time to time because it can grow considerably. It is up to you to decide which of the logging statements you want to keep or remove ;-)
You can even have the log roll over by size, I bet there are question here on SO that will show you how this can be done ;-)
@echo onandC:\php\...? If not, this won´t work. And by the way: echo on is the default, so it does not make much sense to turn it on again. And normally you won`t care about what a scheduled task displays so it does not matter at all ;-)echo Successfully started %TIME% %DATE% >> C:\temp\task.logto the beginning of the file. This creates a short log when the batch was started