[PortableApps] Insight into "Portable Software"

Defining Portable softwareThere is no official definition that explains what "portable software" means. To a developer it probably sounds as "software that can be easily ported to a different platform", but in our case, by "portable software" we assume the following: A program built in such a way that it can be copied to a different location, executed from there, without causing any harm to the system or losing any data. In other words, any of the following statements is true: ï¿½ Moving the program from one folder to another will not make the system unstable, nor render the program unable to run correctly ï¿½ Copying the program to a different computer will not alter that computer's system registry or add any extra files to the system folders (i.e. "garbage the system") ï¿½ The program can be executed from any media (CD, USB flash disk, etc) with the same rate of success ï¿½ Copying the program from one folder to another is as effective as using the official distributive ï¿½ Copying all the program's files and folders to a different location will preserve your custom settings and archives (interface customizations, contact lists, bookmarks, etc) ï¿½ Deleting the program's folder guarantees that the program will be completely and cleanly removed.

Endorsing the Virtues of Portable software The best way to keep windows going as fast as possible is to install as little as possible.

The windows registry is a good idea in theory, but in practice... The theory is that the programs load a little faster..and that is true they do...but in practice most people have too many programs installed, and eventually windows slows to a crawl. This is partly due to bad install programs that leave rubbish when you uninstall programs in windows. Linux install/uninstall routines are far more disciplined and don't leave crap all over your hard drive, or in parts of memory.As Pengy says, many of the programs don't uninstall themselves completely and leave garbage behind. This often includes trial time period notes, licences and user settings, but can also be spyware setting or even the whole thing in really bad cases.

All of this extra baggage will slow down the system even if you have uninstalled the programs because Windows insists on checking the entire registry just about every time it does anything. Simply not running the software is not enough, you need to remove all the extra registry entries.

Oh, did I mention that some programs will change other registry settings and associations so that their competitors programs will stop working properly? And of course you must remember that they will sometimes change an important system entry or link and forget to replace it with the proper one when you uninstall.

Something FP forgot to mention about the Registry is that all this modification tends to fragment it. And once it becomes fragmented it takes even longer for the system to search through it. Plus this encourages corruption which can even disable your entire system and prevent it booting.

The only way to keep your registry relatively clean is to avoid installing programs. Even that isn't perfect since Windows regularly rewrites its own settings for no reason understood by the rest of the world.

M$ turned the registry into a catch-all place for all the programs to dump their junk and as a result it gets horribly cluttered. If the OS maintained it and used a non-linear access pattern it could actually speed things up quite a bit.

Imo the registry should only keep system settings - not program settings - and should be loaded into ram at boot. It should only be modified under special circumstances such as actual program install or system modification, not during routine use. Finally - because it is delicate and vulnerable - it should be automatically safeguarded by the OS using backups, modification confirmation, and fault checking.

what`s wrong with a program using a settings file in its own folder....some do.

You should be able to uninstall a program just by removing its folder......

program specific dll`s and other things could still be in it`s own folder.

I`ve noticed more of these "portable" apps appearing recently.......I wonder if they mess with the registry much, or even the system as a whole ?

I`ve never bothered tracking what one does, but if they don`t mess around too much.......well, I don`t need to even say really.

The idea of portable apps is so they DON"t install in the registry. Linux allows very FEW programs to interact directly with the kernel. I think this is how it should be. The kernel should be the most hardened and protected part of the computer, and you can't have good security if user programs and the kernel {operating system] share the same memory space. This is what actually happens with Microsoft programs..there is just TOO much interaction between the operating system, and a user program. As a consequence, you get system instability and a lack of security. The [minor] benefit, is a [slight] increase in speed.

Now if I have sold you on this idea why not make your own portable software?

There are many places on the net to acquire this information but here is one good way.I know that there are workarounds for all of these. This is just for the novice user, not the intermediate portable apper!

ï¿½ If the program requires a driver, it canï¿½t be portable.ï¿½ If the program has files in the windows appdata or other system dirï¿½s cannot workï¿½ If it needs to register a dll/ocx file, no go.

Lets face it. When you use a computer that is not your own, you feel uncomfortable. You wish that it had the applications that your home computer had. But you canï¿½t install software, youï¿½re a limited user. Well meet your savior! Portable apps Creation Master is the ultimate tool to take your application with you, wherever you are ï¿½ without having to install it.

InstallriteInstallRite can be found free of charge at Epsilon Squared web site (www.epsilonsquared.com). This is one utility that all network administrator/desktop support person should have. Here's how it works. First, it proceeds to create a database of your current system, i.e. directory structure, complete file list, file properties and CRC check, along with a focus on modification of INI files, and complete registry scan. This will be the base system database. Then let's say you install some piece of software. After the installation is done, you do the second step, "Analyze", which will scan your whole system once again, checking for any single change (addition, modification and deletion of files or registry entries) to the database previously created. The result is the "installation trace" of the software you just installed. An interesting feature is that InstallRite let's you create an installation package, extracting all the files and registry entries involved with the software installation and creating a self-extract install file.Screenshots http://www.softpedia...shot-78545.html

InstallwatchInstallwatch is a simple utility which keeps track of which files are created and modified during the installation of a new program. It's fast and easy to use. It doesn't require a "pre-install" phase because it monitors processes while they run. Installwatch works with every dynamically linked ELF program, by intercepting system calls that cause file system alterations. 2. A little bit about InstallWatch

Well, it's name says pretty much what it does. It watches software installations. InstallWatch Pro (version 2.5c at the time of this writing) can be found free of charge at Epsilon Squared web site (www.epsilonsquared.com). This is one utility that all network administrator/desktop support person should have. When you first install the software, it proceeds to create a database of your current system, i.e. directory structure, complete file list, file properties and CRC check, along with a focus on INI files, and complete registry scan. This will be the base system database.

InstallWatch Pro can be configured to be launched at start-up and to detect "software setups". You can customize what portion of your system you want to be considered for the scan, put exclusion schemes, select what registry hives you want to include, etc. So, what happens next? Let's say you want to install the productivity software XYZ on your machine. When you double-click on setup.exe, InstallWatch will detect that a software setup process has been launched, and will overtake operations from there. It will ask you to build a snapshot of your system in order to know the "pre-installation" state of your machine. This can take between 30 seconds to 20 minutes depending on your configuration (beware of cache folders, they are time-consuming to scan). When it is done, it gives control back to the installation program, and we install the software as we would normally do. After the installation, or after the reboot if it required one, InstallWatch will kick in again, again to perform a similar scan. The differences in-between the two scans are the result of the installation procedure. You have the complete image to this software. Doing this process for every software used in a site, IT personnel would have a complete database of software package signatures. This can be useful for deployment/troubleshooting purposes. Epsilon Squared also have another product called InstallRite, that supposedly does the same thing, but also include an "installation kit" export feature. I did not try this yet, but this apparently extracts a software installation previously monitored into a single self-extract file, for deployement purposes

InstallWatch Pro can also be used through a wizard, which will ask you where the installation file is, which can be useful for certain files (like Microsoft patches) that install themselves without triggering InstallWatch. InstallWatch will perform the scan before actually launching the install file. You can also manually launch the different steps if you wish, Snapshot and Analyze.http://www.softpedia...shot-78539.html