Update Tables in WISE Using VBScript

The WISE application is used to generate installation kits. Using WISE, the user can select files from the local machine and add them to the installation. By adding a file to the installation, WISE saves its location on the local machine.

For example: We want to install an INI file that is located under: C:\Program Files\MyProgram\Ini Files.

What happens if we want to generate an installation, using the same INI file, but taken from other location on the local machine? We would have to enter WISE and manually change the file by selecting it from the new location and compile.

It's easy when there is only one file, but what happens if we have hundreds of files like that?

The example is relevant for developers who develop on a multiple projects environment: We have three projects: AAA, BBB, and CCC. All have the same installations, using the same files, taken from different locations:

The DLLs and EXEs of project AAA are saved under C:\VssWorkingFolder\Projects\Release\AAA.

The DLLs and EXEs of project BBB are saved under C:\VssWorkingFolder\Projects\Release\BBB.

The DLLs and EXEs of project CCC are saved under C:\VssWorkingFolder\Projects\Release\CCC.

Using the manual way, we will have to change the WISE script manually (change the path of all the files) for each project and compile it.

This article shows you an easier way:

  1. Under the 'Setup Editor' tab, under Tables: In the Property table add a row: Property = RELEASE_DIR. Value = C:\.
  2. Under the 'MSI Script' tab, under 'User Interface' tab, search the line containing 'MigrateFeatureStates'. Under this line, add a custom action: 'Call VBScript From Installation'.

  3. In the dialog box, insert the relevant details: for 'Custom Action Name' enter whatever you want. For 'Script File,' enter the name of the VBScript file.

    For 'Script Function Call: enter the name of the function, as written in the VBScript: UpdateProperty.

  4. The script is attached.
  5. In case you wish to convert paths: use the 'Tools > Convert Source Paths' menu option. This dialog displays all the paths of the files that take part in the installation.
  6. Press the 'Change Selected Path' button, and in the 'Change To' edit box, enter the property surrounded with [ ].
  7. Press OK. The 'Convert Source Paths' will display the paths as properties.

Now, to create the installation script for the AAA Project, change the VBScript: C:\VssWorkingFolder\Projects\Release\AAA. To create the installation script for the BBB Project, change the VBScript: C:\VssWorkingFolder\Projects\Release\BBB. To create the installation script for the CCC Project, change the VBScript: C:\VssWorkingFolder\Projects\Release\CCC.

That way, you need to change in only one location. Don't forget to compile the WISE script after changing the VBScript.



Downloads

Comments

  • Change property at compile time

    Posted by OsnatHassner on 08/17/2004 01:03am

    That way is used to changed a property at run time. In case you need to change a property in compile time (so that the .msi files will already contain the ** right ** value), you can use the command line utility of wise, in the following manner: "C:\Program Files\Wise for Windows Installer\WfWI.exe" "C:\VssWorkingFolder\MySetup.wsi" /c /p RELEASE_DIR="C:\VssWorkingFolder\Projects\Release\AAA" /c stands for: compile. /p stands for: property. in this case you've changed the RELEASE_DIR property. next time you'll open the wsi, you'll see that property's value has changed. in the msi that was created in this compilation, the RELEASE_DIR property holds the value "C:\VssWorkingFolder\Projects\Release\AAA" more help is available at the "Wise for Windows Installer" help pages, under "Changing the Source Directory Dynamically During Compile"

    Reply
Leave a Comment
  • Your email address will not be published. All fields are required.

Top White Papers and Webcasts

  • Live Event Date: December 11, 2014 @ 1:00 p.m. ET / 10:00 a.m. PT Market pressures to move more quickly and develop innovative applications are forcing organizations to rethink how they develop and release applications. The combination of public clouds and physical back-end infrastructures are a means to get applications out faster. However, these hybrid solutions complicate DevOps adoption, with application delivery pipelines that span across complex hybrid cloud and non-cloud environments. Check out this …

  • On-demand Event Event Date: October 29, 2014 It's well understood how critical version control is for code. However, its importance to DevOps isn't always recognized. The 2014 DevOps Survey of Practice shows that one of the key predictors of DevOps success is putting all production environment artifacts into version control. In this webcast, Gene Kim discusses these survey findings and shares woeful tales of artifact management gone wrong! Gene also shares examples of how high-performing DevOps …

Most Popular Programming Stories

More for Developers

RSS Feeds