| ipt type="text/javascript"> ch_client = "articlealley"; | | | | on-the-fly. Best of all, InstallAware⢠produced |
| ch_type = "mpu"; ch_width = 590; ch_height = 250; | | | | pure Windows Installer setups - all my scripting logic |
| ch_non_contextual = 4; ch_noborders = 1; | | | | automatically got compiled into an MSI database |
| ch_vertical ="premium"; ch_sid = "590x250 Article | | | | every time I clicked the build button. I did not have |
| Mixed Top"; ch_alternate_ad_url = " var ch_queries | | | | to look at a single MSI table or sequence for this to |
| = new Array( ); var | | | | happen. Moreover, my InstallAware⢠setups |
| th)); if ( ch_selected < ch_queries.length ) { | | | | did not require a third party scripting engine to be |
| ch_query = ch_queries[ch_selected]; } I found out | | | | installed before they could run. Firing up the |
| about InstallAware⢠while searching for MSI | | | | generated MSI started my installations immediately. |
| scripting on Google. The InstallAware page I came | | | | Needless to say, I was very impressed. |
| across had a term called "Genuine Scripting for | | | | I am impressed with InstallAwareâ¢. Having |
| Windows Installer". While I thought this would be a | | | | used major MSI setup authoring tools, I can say that |
| long shot, I nevertheless downloaded the trial version | | | | InstallAware⢠represents a unique and fresh |
| and fired up the InstallAware⢠IDE. Sure | | | | alternative to the existing installers, which are |
| enough it had two tabs on the bottom, labeled | | | | essentially different front-end user interfaces to MSI |
| suggestively Visual and Code. This was getting | | | | databases and require Windows Installer knowledge. |
| exciting! I clicked the Code tab - and lo and behold, | | | | InstallAware⢠completely isolates the setup |
| there it was! | | | | developer from Windows Installer tables. The tool |
| Over the next couple of days, I played with the | | | | itself is not designed to be a database editor but it |
| InstallAware⢠IDE and created several setups. | | | | builds an MSI database based on your |
| I actually found out InstallAware's⢠scripting | | | | InstallAware⢠script actions. This makes the |
| to be very powerful - you get to control not only | | | | MSI development very easy for a user who is not |
| the dialogs and logic of your install, but also the | | | | familiar with Windows Installer or a user who does |
| uninstall. If you ever wanted to do more than just | | | | not want to directly deal with the raw data found in |
| run a custom program or show the standard uninstall | | | | MSI tables. On the other hand, if you want to see |
| dialog, you can do that in InstallAwareâ¢. I | | | | Windows Installer tables and/or make direct |
| went ahead an added a custom dialog which asked | | | | modifications to tables, InstallAware⢠may |
| my users why they were uninstalling the product, and | | | | not be the right tool for you. Because it does not |
| posted the feedback to a web server, all as an | | | | directly expose any Windows Installer tables to the |
| integral part of the uninstall wizard. And there's more: | | | | user. Essentially it is not designed to be a MSI |
| If you want to seamlessly uninstall an older version | | | | database editor. It lets you keep the same setup |
| of your product while installing the new version, you | | | | authoring practices and migrate all your existing skills |
| can do that too. I was even able to create setups | | | | to Windows Installer. |
| that dynamically configured their feature-sets | | | | |