Users, this is a software error not hardware. It has nothing to do with your computer hardware so stop posting it.
My best guess for the cause is the way Windows does memory protection to prevent buffer overflows (look it up online) or how SWBF2 access some system files. Depending on your Windows patch versions, these are handled differently. SWBF2 isn't coded correctly (according to Microsoft's messed up standards, but thats another issue). SWBF2 tries to do something thats aganist Windows' new security measures, so Windows refuses and terminats the program. When you tell Windows to run a program in a compatability mode, you are telling it that the program, SWBF2, isn't coded for these new security checks (among other things). Windows will then not preform these checks on SWBF2 and the game will run.
(I may not agree with thoughts posted under this name)
Looking for a mature clan? Checkout www.rdhclan.net
email/PM me for more info