Product Reviews

Code, Build, Repeat

FinalBuilder adds new .NET capabilities to its project-building repertoire.

I looked at FinalBuilder about a year ago when it was at version 1.2, and I was impressed. In the intervening time, the version number has gone up to 1.5 thanks to a steady stream of releases, so I thought I'd take another look. Now I'm even more impressed.

FinalBuilder is a product designed to help you build software in a simple and repeatable fashion. The program's graphical interface is populated with a list of actions. These include such things as:

- Run a DOS command
- Copy or move a file
- Compile a project
- Check in or check out files
- Build an installation project
- Send email
- FTP a file
- Compile a help file
- Create a zip file
- Run a testing project

As you add actions to your FinalBuilder project, property sheets prompt you for file locations, target files, compiler flags to set, and so on. Other actions allow you to add looping and conditional activities to a FinalBuilder project. Actions also support scriptable before and after events that allow you to tie in an active scripting language for additional processing.

New actions in the last year include compiling Visual Studio .NET projects, performing source code control operations with Perforce or CVS (as well as VSS), compiling Borland C++ Builder projects, reading and writing Registry keys, compiling Visual C++ 6.0 projects, and running InstallShield Developer 7 or 8. There's also an API to let you plug in your own actions if you like (using Delphi).

When you're done, press a single toolbar button and watch FinalBuilder get to work. In one fairly complex project, for example, my FinalBuilder project updates the version numbers in some interlocked Visual Studio .NET projects, builds them, copies DLLs to testing folders, labels the VSS repository with the build number, runs unit tests, builds documentation, zips up the results (using the build number in the zip file name), uploads the results and the log files to an FTP server, and sends e-mail to the project participants. If anything goes wrong, I get a clear message on screen and in the log file. You can trigger builds from the command line or on a scheduled basis, as well as from the GUI.

It takes some effort to set up a system like this, but it's worth it. The easier you make builds, the more likely you are to do them on a regular basis. With FinalBuilder, even a complex build only holds my attention for thirty seconds, until it sends me e-mail. That's a great productivity enhancement.

About the Author

Mike Gunderloy, MCSE, MCSD, MCDBA, is a former MCP columnist and the author of numerous development books.


  • How To Use .CSV Files with PowerShell, Part 1

    When it comes to bulk administration, few things are handier than .CSV files. In this two-part series, Brien demos his top techniques for working with .CSV files in PowerShell. First up: How to create a .CSV file.

  • SameSite Cookie Changes Rolled Back Until Summer

    The Chromium Project announced on Friday that it's delaying enforcement of SameSite cookie changes, and is temporarily rolling back those changes, because of the COVID-19 turmoil.

  • Basic Authentication Extended to 2H 2021 for Exchange Online Users

    Microsoft is now planning to disable Basic Authentication use with its Exchange Online service sometime in the "second half of 2021," according to a Friday announcement.

  • Microsoft Offers Endpoint Configuration Manager Advice for Keeping Remote Clients Patched

    Microsoft this week offered advice for organizations using Microsoft Endpoint Configuration Manager with remote Windows systems that need to get patched, and it also announced Update 2002.

comments powered by Disqus

Office 365 Watch

Sign up for our newsletter.

Terms and Privacy Policy consent

I agree to this site's Privacy Policy.