mIRC isn't supposed to loose any settings when you close/reopen it, it means that it can't save the settings, and that could be because it doesn't have access to write to the directory where it saves its settings.
Do you have mIRC's directory (you can type in any mIRC's editbox "//echo -a $mircdir $nofile($mircexe)" to verify) set to the same directory as mirc.exe and is that directory the 'program files' directory? If not, please give some details about your configuration, by giving us what that /echo command returned

#mircscripting @ irc.swiftirc.net == the best mIRC help channel