Ну, дело не патче, его бы в обще на сервер не пустило. Дрова (видео), директ икс, vcredist, либо ключик.
Вот тут где-то проблема. А вообще, что пишет?
Проверь так, в реестре, по пути - "HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Electronic Arts\EA Games\Battlefield 2\ergc", увидишь что то типо этого x9392 0000 0000 0000 0000 . Вбей наугад 20 цифр и букв, но при этом ключ должен начинаться с x9392.
После чего - сохранить. И попробуй зайти.
А вообще, что пишет когда выкидывает. Как только дашь инфу, что пишет, так сразу поможем.