Try the workaround mentioned above, or use foobar2000 - it has full Unicode support and some compatibility tricks for commandline encoders like flac.exe.
I use the following script found here on the forums (with slight modifications) for recoding FLAC files to the newest version installed:
@echo off
set encoder="C:\Program Files\FLAC\flac.exe"
for /r "." %%d in (.) do (cd %%d & for %%f in (*.flac) do %encoder% --best -V -f "%%f")
What I'm after, is making this script also work with unicode names (currently I get the "invalid argument" error). I'll try the workaround described above.
Can foobar easily recode all of the FLAC files in my music library fully automatically, just like this script can?
Edit: Tested, didn't work. I made a flac.cmd containing exactly what is described above (except for the path), and I used the script above using flac.cmd instead of flac.exe. I got the following error:
ERROR: for encoding a raw file you must specify a value for --endian, --sign, --channels, --bps, and --sample-rate
Type "flac" for a usage summary or "flac --help" for all options
Edit #2: I can't help thinking that the two scripts must be merged. Can someone do this for me? I have little knowledge of such scripting... I want the settings and the recursive functionality of the script I mentioned, and the unicode support of the workaround script.