I have no idea what StarTeam is, but really what you want to do is branch your code base every time you do a release. Then you keep working on the branched copy, but you have a freeze of the version that's in the field. As for distribution. I use 'Advanced Installer' and it rocks, well worth the price of admission ( only $100 or so ). www.advancedinstaller.com[^] The bit that I always find a hassle is the database scripts. I don't know what other people do, but I long ago wrote an app that has a database connection string in the config file, and that scours a subdirectory for .sql files and executes them. When I distribute an app with a database, I install a named instance of MSDE, which makes it easier to set up the installer app to find it to run scripts against it ( that is, I know what I am looking for ). Christian Graus - Microsoft MVP - C++