Source :
UPDATE: It appears that some of the BioShock 2 crashes to desktop come from the usage of DirectX 10. Apparently, running the game in DirectX 9 mode will solve your crash problems. Here’s what you have to do in order to runBioShock 2 in DirectX 9 (for Vista and Windows 7 users only!):
Click Start. Select Games from the right hand side (should list documents music and games). A new window will open with the icon forBioshock 2 inside. Right click this icon and select Bioshock2 (DX9).
If you have classic view enabled, Click Start, Select Games, Select Games Explorer and a new window will open with the BioShock 2 icon. Right click it and select Bioshock2 (DX9). Hope this helps, will keep you updated if any other fixes are found!
2nd UPDATE: Thanks to our great readers, especially Hoper, we have another fix that is said to work. Here’s what to do:
Delete everything in here”
C:\Users\*Username*\Documents\Bioshock2
Or whatever folder you have saves in, and then start the game. It will work!