Now you got me curious. I'm currently using exactly the method described - below my exe is a folder named /data/StandaloneLevels/ which I'm currently using to read/write to.
True, I'm not actually using a relative folder, I'm using GetModuleFileName to get the running folder of the exe, and then add the /data/StandaloneLevels/ to the end. But I just went and placed it in c:/Program Files(x86)/ - and both reading and writing the levels seemed to work just fine.
What Windows version and account privileges? It's well-known that limited accounts on Vista and later will run into problems, especially on installs of Windows with harsher UAC configurations. If you're on Win7 with UAC on minimal and running as an administrator, well, of course you can do that without issue ;-)
 For clarity: reading is fine. Writing is where account permissions matter. If you're on an elevated account you can write freely. But it's been recommended not to do that sort of thing since the Windows 2000 era.