It worked fine for me on SQL 2008
You have to remove the period and lower case 'sysfiles' (SYSFILES won't work for me)
exec sp_MSForEachDB 'Use ? SELECT name AS ''Name of File'', size/128.0 -CAST(FILEPROPERTY(name, ''SpaceUsed'' )
AS int)/128.0 AS ''Available Space In MB'' FROM sysfiles' --select * from sysfiles