Cómo usar el comando setx en un archivo por lotes de Windows

Estoy tratando de crear un archivo por lotes de Windows para configurar automáticamente la variable de entorno para usar python 2.4 o python 3.3.

Tanto python 2.4 y 3.3 están instalados en mi sistema. Aquí está mi código:

::To toggle between Python24 and Python 33
@echo on
if (%PYTHONHOME:~-2%) == "24" (setx PYTHONHOME "C:\Python33" && setx PATH %PATH:Python24=Python33% ) else (setx PYTHONHOME "C:\Python24" && setx PATH %PATH:Python33=Python24% )
pause

Para empezar tengo PYTHONHOME configurado paraC:\Python24

Pero el script anterior da el siguiente error:

SUCCESS: Specified value was saved.
ERROR: Invalid syntax. Default option is not allowed more than '2' time(s).
Type "SETX /?" for usage.

Mi PYTHONHOME todavía apunta a python 24 y nada cambia. El comando setx no cambia la variable de entorno. Que esta causando este error?

Respuestas a la pregunta(4)

Su respuesta a la pregunta