Portable applications should really be self contained to the folder the application is ran from. Any ini/cfg/xml config file should reside in the same folder as the program is in.
Registery settings should be avoid except in cases where the program ties in with a browser (e.g mass downloader.. you right click in the browser and get options to download to mass downloader) or whatever it is designed to do. If the those registry settings are missing, the application should recreate them on program launch.
Technically, just because it is a portable application, it shouldn't require any more memory than if the program was actually "installed".
Open with list, you can assign any program by browsing to it. It doesn't care if the program is "installed" or portable, just as long as it is available when it is needed.