When updating software on Windows which is already installed, what is best practise?
Is it better to uninstall the old version first, and then run the new installer, or will all installers have the facility to upgrade automatically?
Depending of the installer. Some do a "clean" on your filesystem to erase some useless files, cleanly remove the old unused file, but also a lot of them don't do this at all.
It's really depending of the installer, and more, of the developper of the application if he is good.
On Windows, you have a good utils to delete your old register tables, clean some logfiles etc..
Just take the Free Version, it's good. Don't forget to make a save of you registry before any change (All is explain in the app).
Personally I always install the newer version, the vast majority of installations will look for old versions... Ones that don't will usually error and tell you to uninstall the old version first.
If the installation completes and the program is installed in the same folder i wouldn't worry too much - aslong as all updated files are overwritten.
Any problems, uninstall newest version, then uninstall the older copy, reboot and then install the newer copy again. The very few times this needs to be done far outweigh the ease/speed of the vast number of other installations which will fall in the previous categories.