Obtienes algún mensaje de error o simplemente no funciona?
Agrega
error_reporting(E_ALL); al inicio del script donde haces el exec() y usa los otros dos parámetros para ver si hay alguna salida:
Aunque también podría ser algo tan sencillo como que necesitas ejecutar cmd y agregar el nombre de tu archivo.bat como parámetro.