"Battlefield 2
We ran Battlefield 2 in both its native un-patched state and with the latest 1.3 patch, and both of them seemed to work just fine. There's one significant gotcha that crept up several times in our testing: Punkbuster. The Punkbuster anti-cheating code is a common part of many online games (particularly shooters), and it works by scanning game files to make sure they're not compromised. Most Battlefield 2 servers have Punkbuster enabled, and when we joined one, we got promptly kicked out of the game with a message saying Punkbuster failed due to "inadequate O/S privelages."
The solution is simple enough: right-click the BF2 icon, choose Properties, and then in the Compatibility tab check the box that says "Run this program as an administrator." After doing this, we encountered no problems joining any server."
Saggat från sidan: http://www.extremetech.com/article2/0,1697,1968998,00.asp
Så det enda du behöver göra för att få det att funka med bf2 är att ställa in programmet så att du kör det som en administatör.