Since mIRC would be getting settings from the Application Data folder, would mIRC check the mirc.ini in the Application Data folder for the portable setting, or check to see if mirc.ini is in the current folder then check the portable setting. It may be more conveniant to see if mirc.ini is in the same folder as mIRC, and if it is, goto portable mode. A -nonportable switch may be desired in either case.
I like the profiles idea, however I think if that is implemented a "Profiles" menu should be created that contains options to manage profiles and switch profiles. Scripts should be loaded/unloaded with the profiles (I think he meant this anyway). A default profile should also be available, and all scripts from the the default profile should remain loaded in any profile. Each profile should have its own ini file to store setting for that profile (channels, nicks, networks, scripts, aliases, popups, and other). A profile event may even be desirable, so scripts can save settings before getting unloaded for the next profile.
A profiles command/identifier should be available to help manage profiles as well.
- Create new profiles
- Delete profiles
- Start new mIRC with a chosen profile loaded
- Change profiles
- Return the current profile
- Return profile location (on hdd)
- Return any setting specific to a profile
- Return information on all profiles
Even if a profile system is implemented, a simple (command line free) method should be created for the portability option.