Why is it so bad for an application to write its settings to the user profile folder? Writing settings to the application folder is dangerous because you need to have admin rights on the machine and different users are stuck with each other's settings! Storing settings in the user profile folder also has the advantage that you could upgrade a program without losing its settings.
In a multi-user environment, it is indeed inappropriate to write settings in the application folder. However, portable apps are run from external USB flash drives or equivalent, so it is a personal device and writing settings to the application folder is therefore preferred. In addition, the admin rights requirement is no longer a concern since you have full access to the USB drive.
An application can cater to both multi-user environment and portability by checking with the user on startup (when it detects that the settings are not initialized yet) whether he wishes to write settings to the user profile folder or application folder. This should be relatively easy to implement, and makes no assumption on the user's preference. Underlying this mechanism is to check for a file eg. settings.ini in the application folder on startup. If the file exists, it write its settings to the application folder, otherwise to the user profile folder.
With regards to the issue of upgrading an application without losing its settings, you could just as easily upgrade a portable app without losing settings by avoiding the appropriate file(s). Some well-designed apps like Portable Firefox even has a explicit profile folder that you simply leave alone when copying over the new application files. This also has the added advantage of being able to easily maintain several versions of the same application, each with its own settings.
Why Use Widgetbox?
- Track your widget with your metrics dashboard.
- Each widget has an analytics dashboard that tracks key metrics like # people who have subscribed to your widget, where your widget is being used, # page views, and which subscriptions are driving other people to get subscriptions themselves. Learn more »
- We help people easily add your widgets to their favorite destinations.
- We make it as simple as possible for people to get the widget onto their site. Already people can install onto many popular destinations without copying and pasting code. And, if they already have installed a Widgetbox Panel, adding your widget is drag and drop on many sites via our widget panels.
- We worry about each widget customization for you.
- Chances are, you want each person to be able to easily customize your widget. Maybe they need to select different content, change fonts or colors, or put in their affiliate ID. Widgetbox lets you visually build a form to capture this info, stores it for you, and sends it to you in the query string each time the widget is requested. If we host the widget for you, this configuration info can be used directly in Javascript and HTML via our variable system.
- Your widget will be smarter and more spreadable.
- Your widget can take advantage of smart widget context without modification. We also make it easy to spread your widget as a bona fide Facebook app using our Facebook App Accelerator as well as making it available on OpenSocial networks.
- It’s FREE.
- The service is completely free. In fact, you can make some money with your developed widgets by taking advantage of our DevShare program.

