Alright.. I have recently fixed my "Crash to Desktop" issues with the Instant action and Conquest gametypes.
But now it seems it only happens to Multiplayer. I connected before without problems, but now, immediately after I logged in Gamespy, it exits to the desktop. I do use legit game CD's.

Setting Processor Affiinity Manually: Launch Star Wars Battlefront 2, and as soon as the game appears to begin loading, or after it has loaded up, press CTRL+ALT+DEL to bring up the Task Manager. Under the Processes tab, find the BattlefrontII.exe process, right-click on it, select 'Set Affinity' and in the box which appears, untick 'CPU 1'.

Setting Processor Affinity Automatically: If you want to force the game to only use one of your CPUs automatically each and every time you run the game, see the instructions here for using the Imagecfg utility, a small Windows NT file you can safely copy into your \Windows\System32 directory and then use to permanently set the affinity for particular programs. I recommend you backup your BattlefrontII.exe file before applying this tweak, as the only way to undo it is to restore the original .exe file. Furthermore, note that you may have to redo this tweak each time you patch the game, since the executable will change.