@zhaojinlong4 Like you said yourself it may be time to bite the bullet and reinstall the OS. I would back up any important files install the OS and updates then only install new drivers, Steam and BF2042 nothing else. You can then install your programs one at a time and check if BF2042 still works. I don't know if a repair install would work with all the programs, you have installed but you could try that first, I guess.
Did you try a clean boot already first?
https://support.microsoft.com/en-us/topic/how-to-perform-a-clean-boot-in-windows-da2f9573-6eec-00ad-2f8a-a97a1807f3ddThis would eliminate any background programs interfering with BF2042