Ok I know this is an old issue now but just thought that as this is one of the top results people get when searching at least some relevant information should be available on the subject.
Now the reason in most cases that this occurs is because something has been installed on the system in question that has made a new folder on the system drive called c:\program or c:\programs, (where c:\ is the system drive), and installed into that folder.
Whether it is adware, a virus or a user/system administrator installed program is inconsequential.
Window's then brings up the file name warning. It does this because windows uses environmental variables such as %systemroot%, %ProgramFlies%, and also folder structure variable abbreviations such as progra~1 and progra~2 whenever most correctly written
programs are installed and or run. It does this so that it can easily find the locations it needs to execute other elements of software, save, and install no matter what drive letter your system uses eg c:, d:, z:\ etc.
By installing anything to a newly made folder called c:\program, (or %systemroot%\program), windows then, using folder structure variable abbreviations, thinks the folder "Program" is PROGRA~1 where PROGRA~1 used to be "Program Files" and, (in the case
of x64), PROGRA~2 used to be "Program Files (x86)". This would then make "Program Flies" become PROGRA~2 and "Program Files (x86)" become PROGRA~3. Any program already installed on the system and also future installs could then be trying to use the wrong folders
to save/install/load and may not function correctly.
As I said sorry to answer such an old thread but I hope this helps someone.