Rode o patch, selecione a linguagem e avance. Qdo aparecer a tela de boas vindas, não faça nada.
Agora vá para essa pasta: (importante, para visualizar é necessário ativar a opção para visualizar arquivos ocultos no windows explorer)
C:\Documents and Settings\seunome\Local Settings\Temp
Abra a pasta contendo o nome "{EF09ACB2-B1D8-4238-90A5-C2BA3F496D63}", e depois abra esta "{F317E784-F31C-4F26-A610-2D7BD89FEC5F}".
Copie todos os arquivos presentes para alguma outra pasta de fácil acesso, recomendo "C:\Documents and Settings\seunome\patch"
Agora abra o seu command prompt (vc pode achar ele pelo menu iniciar ou executando o arquivo "cmd.exe".
Entre na pasta que vc criou, se seguiu minha recomendação basta digitar "cd patch".
Agora é só digitar: patch "endereço de instalação do seu BF2"
Exemplo: patch.exe "C:\Jogos\Battlefield 2" (as aspas são obrigatórias)
Espere o processo de instalação terminar e seja feliz!