But portable application is Read-only. Changes you made to app's registry keys or app's files are stored in sandbox. Sandbox is real directory on disk and it contains all changes done to original app's registry keys and files. I don't think there is any other solution of virtualization which preserves this changes into package it self.
Virtualization should solve issues with installations of applications. Not preserving app's settings.