Sounds like a access rights problem under Win7.
Have you tried turning off the Win UAC feature?
I have the same problem. I played for few weeks without error. Then I clicked on BFHQ and clicked a slider button right next to United States Army. I was just curious. Right after the click, it got me on windows screen with error: FH2 crashed. do you want to report it to FH2 team?
Since this, every time I turn in FH2, I get 2 errors after clicking FH2 shortcut.
They say: failded to move mods/fh2/shaders_cliant.zip to mods/bf2/shaders_cliant.zip. The process cannot access the file because its being used by another process.
It worked with two errors and I played properly for few days. But today when I started, I had 2 more errors and while I was playing, I tryed to aim with a gun and it was black and white.
(btw: I have Win7 and UAC turned off. No firewall and other stuff. I have original copy of a game)