Visual Installer 2015 has now been released

We have now released a new version of our setup tool SamLogic Visual Installer. The name of the new version is SamLogic Visual Installer 2015 and the version number is 10.5. Some new features in the new version are:

• Support for Windows 10.
• Support for Office 2016 and Office 365.
• Support for Visual Studio 2015.
• Support for AutoCAD 2015 and AutoCAD 2016.
• You can now install both 32 bit and 64 bit files from the same installation.
• Clickable e-mail addresses and web addresses can be included in setup dialog boxes.
• Setup packages can now be built without user interaction from build servers and batch files.
• Visual Studio’s solution files (.sln files) are now supported.
• Improved code signing functions.
• Improved support for installation and uninstallation of Excel Add-Ins.
• Improved handling of license keys.
• Improved support for Twitter.

A detailed list with new features in Visual Installer 2015 is available on this web page. In the following blog posts we will describe some of the new features in Visual Installer 2015 in detail.

How to check bitness for an .EXE, .DLL or .OCX file

An .EXE file, a .DLL file and a .OCX file (and some other binary file types) can be compiled as a 32 bit file or a 64 bit file. In many cases you can find out whether the file is 32 bit or 64 bit by using one of the following methods:

• Check the filename of the binary file. Does it have a “64” at the end of the filename (like “mydll64.dll”)? Then it is very likely a 64 bit file.

• Right-click on the file in Windows Explorer, choose Properties, open the Details tab and examine if bitness information is included here. Sometimes it is.

• Is the file located in a 64 bit folder? Then it is very likely a 64 bit file (read more about 64 bit folders in this article on our website).

• The following tip works only for EXE files. When the program file is run, open Windows Task manager and open the Processes tab. Look after the filename for the program. If you find the text “*32” after the filename, it is 32 bit file. Otherwise it is a 64 bit file.

Another method – Check file bitness using Visual Installer’s editor
If none of the methods above work for you, there is another method you can use instead. You can use the Visual Installer editor to check bitness for a file. Follow the steps below to check bitness for a file via Visual Installer’s editor:

1. Start Visual Installer.
2. Add the file that you want to examine to Visual Installer’s file list.
3. Right-click on the file in Visual Installer’s file list.
4. Choose the Show file information menu item in the menu that is shown.

5. Check the information to the right of the Bitness field in the File information window.
    The text will be “32 bit” or “64 bit”.

If the text is “32 bit” to the right of the Bitness field, the file is compiled for 32 bit. If the text is “64 bit” to the right of the Bitness field, the file is compiled for 64 bit. The picture below shows an example for a 32 bit file.

And the picture below shows an example for a 64 bit file.

Use correct destination folders for binary files
Different folders are used in Windows depending of a binary file is a 32 bit or 64 bit. For a file that will be installed to Windows system folder it is very important to put the file in correct system folder, otherwise the file will not be found by the software. For a file that will be installed to Windows program files folder it is recommended to put the file in a program files folder intended for the same bitness. However, the software may work if you put a file in wrong program files folder, if the software is aware of this and can handle the situation.

See also
> Blog: How Visual Installer handles 64 bit folders in Windows
> Tip: How to install a 64 bit program
> Article: The ‘Program Files (x86)’ and ‘SysWOW64’ folders explained

An update of Visual Installer 2014 is now available

There is now an update of SamLogic Visual Installer 2014 available. The version number is 10.0.27, and some of the news and improvements in this version are:

• A German language file is now included. Texts in setup dialog boxes and message boxes etc. can now be displayed in German in an easy way. Read more.

• A new script command: UNINSTALL_XRUN. Can be used to run a program during an uninstallation. It works like XRUN, but the command is executed during the uninstallation process. This command is useful if some special processing must be done during the uninstallation process, for example to uninstall a Windows service that was installed during the installation process. The picture below shows an example of usage. Read more.

• A new script command: UNINSTALL_MSIEXEC. Can be used to run an external MSI installation or uninstallation during an uninstallation process. By combining MSIEXEC with UNINSTALL_MSIEXEC you have a nice and easy way to handle both installations and uninstallations of MSI files. The picture below shows an example of usage. Read more.

• Improved error handling when using the code signing functions in Visual Installer.

• Improved error handling when adding files to Visual Installer’s file list through a .DEP file.

• Easier to install side-by-side system files / runtime files like MFC42.DLL.

We have also fixed some bugs and other issues that have been reported. For example:

• Forward slashes in the main destination folder made the installation to fail. Visual Installer now converts forward slashes (“/”) to backslashes (“\”) automatically.

• If the source path was a UNC file path (a file path that starts with “\\”) the installation sometimes failed. Visual Installer now checks that the source path starts with a drive letter.

• Some updates in the English languages file. We have removed some outdated text.

How to download the update
If you have Visual Installer 2014 and a 12 months maintenance plan you can download the update from the following download page:

> Download – Visual Installer 2014 – Latest update

If you have an older version of Visual Installer, for example Visual Installer 2012, you can upgrade to the latest version of Visual Installer from this order page:

> Upgrade to Visual Installer 2014

A German language file is now included in Visual Installer

In the latest of update of Visual Installer 2014 (version 10.0.27) we have included a German language file. So you can now use German text in your setup packages in an easy way.

German text

To choose German language to a setup project you must first open the Special – Language menu item in Visual Installer’s editor. And thereafter you choose the GERMAN.LNG language file in the list that is shown.

Some project specific texts must be entered via the Dialog boxes tab in Visual Installer’s editor, just as before. For example text that you want to show in the Welcome dialog box.

See also
> How do I change language for my setup dialog boxes?
> The ‘Program Files’ folder in different languages (Technical Article)

How to install and uninstall a Windows service using Visual Installer

The Visual Installer installation tool can be used to install and uninstall a Windows service. By combining the XRUN script command with the new script command UNINSTALL_XRUN this is very easy done. UNINSTALL_XRUN is a new script command that vi added to Visual Installer’s scripting language in the version 10.0.27 update of Visual Installer. UNINSTALL_XRUN runs a program during Visual Installer’s uninstallation process.

XRUN can be used to install (register) the Windows service and UNINSTALL_XRUN can be used to uninstall (unregister) the Windows service. In this new tip on our website we will explain in detail how to install and uninstall a Windows service using the scripting language in Visual Installer 2014 / Professional:

> Tip: How to install a Windows service using script

New script command in Visual Installer: UNINSTALL_MSIEXEC

Earlier this year we added the MSIEXEC script command to Visual Installer’s script language. MSIEXEC is used to run an MSI installation from a Visual Installer setup package. Windows Installer is used for the setup process. We have now added a new script command that functions like MSIEXEC but it is run during the uninstallation process instead. The name of the new script command is UNINSTALL_MSIEXEC.

Just like MSIEXEC, the UNINSTALL_MSIEXEC command takes three parameters:

%Filename : Full path to the MSI setup package
%Param : Command line parameters to send to Windows Installer
%Wait : Pause Visual Installer until Windows Installer is ready

By combining MSIEXEC with UNINSTALL_MSIEXEC you will have a nice and easy way to support both installation and uninstallation of a MSI setup package in a single Visual Installer project. The picture below shows how to use these two commands in a Visual Installer project:

As you can see, only two lines with script code is needed to handle both an installation and uninstallation of a MSI setup package. MSI_EXEC is run during the installation process and UNINSTALL_MSIEXEC is run during the uninstallation process.

Tips
We have published tips on our website that explains in detail how to use the MSIEXEC and UNINSTALL_MSIEXEC command. Click on the links below to read the tips:

> Tip: How to run an MSI installation from script
> Tip: How to run an MSI uninstallation from script

Updated Visual Installer 2014 with many new functions

We have now released an update of SamLogic Visual Installer 2014 (version 10.0.20) that contains many new functions and improvements. Below are some examples of new functions that we have included in the update of Visual Installer:

– You can now add version information (for example a version number, product name and company name) to a self-extracting setup package. Read more.

– Visual Installer can now register a .NET assembly and add a COM object interface to the assembly, so it can be accessed from unmanaged (native) applications. Read more.

– A new script command with the name MSIEXEC has been added. It can be used to start an MSI installation from Visual installer. Read more.

– A new script command with the name EXIT has been added. It can be used to cancel an installation, for example if some conditions or system requirements are not met.

– A new condition has been included in the scripting language that can be used to check if a specific application or library already has been installed. Read more.

– A new condition has been included in the scripting language that can be used to check if the operating system is 32 bit or 64 bit. Read more.

– Support for Autodesk AutoCAD 2014.

– The OpenSSL library that is used by the Twitter function in Visual Installer has been updated to use the latest version of OpenSSL (version 1.0.1g) which contains a bug fix for the Heartbleed bug. If you use the Twitter function in Visual Installer we recommend you to install the update.

How to download the update
If you have Visual Installer 2014 and a 12 months maintenance plan you can download the update from the following download page:

> Download – Visual Installer 2014 – Latest update

If you have an older version of Visual Installer, for example Visual Installer 2012, you can upgrade to the latest version of Visual Installer from this order page:

> Upgrade to Visual Installer 2014

Visual Installer: How to add version information to a setup package

One new function in Visual Installer 2014 (version 10.0.20, and later) is the possibility to add version information to a self-extracting setup package. You can for example add version number, product name, company name and copyright text. The version information can be seen in Windows Explorer and in other places in Windows.

Where in Visual Installer can the version information be entered?
You can enter the version information in the Version information dialog box in Visual Installer. The dialog box can be opened via the menu item Special – Version information. The picture below shows how the dialog box looks like:

The 'Version information' dialog box in Visual Installer

The Version information dialog box has existed in Visual Installer for many years, but what is new is the Save version information also in the self-extracting setup package option in the bottom of the dialog box. This option was added to the dialog box in version 10.0.20 of Visual Installer. If you select this option, the version information that you enter in this dialog box will be stored in the setup package file. If the option is not selected, no version information will be stored in the setup package and the dialog box will function as in previous versions of Visual Installer (for example, as a way to identify installation project files).

The version information can be viewed in Windows Explorer
If you have chosen to add version information to the setup package, the information can be shown in Windows Explorer and other places in Windows. For example, when the mouse pointer is above the filename in Windows Explorer, a tip text with the version information is displayed (as shown in the picture below):

Tip text in Windows Explorer (with version information)

Also the Details tab in the Properties dialog box in Windows Explorer contains this information (the dialog box can be opened by right-clicking on the filename and choosing the Properties menu item). The picture below shows how the information is shown in the Details tab if the text that was entered in this blog post’s first picture is used:

The 'Properties' dialog box in Windows Explorer

Version number
If you want to add a version number to the setup package, you must use 4 numbers when you specify the version number; for example: 1.2.0.5. Both commas and semicolons are allowed to use as a delimiter. So it is also ok to enter the version number like this: 1,2,0,5.

If you use more than or less than 4 numbers for the version number (for example 1.2) the version number is not stored in the setup package. If you want a version number like this to be stored in the setup package, you can extend the version number with zeros and enter the version number like this: 1.2.0.0.

Visual Installer: How to register a .NET assembly

An ActiveX component must always be registered before use and sometimes also a (native) DLL file must be registered before it can be used. This is very essential in many software projects so Visual Installer have had built-in functions to register ActiveX components and (native) DLL files for many years. In Visual Installer 2014 we have extended this functionality so also a .NET assembly can be registered.

A NET assembly is an application, component or class that is compiled for use with Microsoft .NET Framework. A NET assembly can have an .EXE filename extension or a .DLL filename extension. If the filename extension is .DLL, the assembly is a library assembly and can be used by other .NET code in an easy way. But the assembly can not be used from native (unmanaged) code, unless it is registered in the system and a COM object interface (a COM-callable wrapper) is added to the assembly. The new function that we have added to Visual Installer will make such a registration.

If you add a .NET assembly (with the filename extension .DLL) to Visual Installer’s file list and select the file in the list, a new menu item is added to the List menu. The name of the new menu item is Register .NET assembly (see the picture below):

If you choose this menu item, the following dialog box is shown:

The 'Register .NET assembly' dialog box

In this dialog box you can set some options that will be used when the .NET assembly is registered, for example which .NET version to use and which bitness (32 bit or 64 bit) to use.

See also
> Visual Installer: Register a .NET assembly
> Tip: How to register a .NET assembly

Visual Installer: New conditions in the scripting language

We have added two new conditions to Visual Installer 2014’s scripting language. One condition can be used to check if the operating system where the setup package is run is 32 bit or 64 bit. Another condition can be used to check if an application or library already has been installed in a computer or not. The later condition is very useful when it is combined with the MSIEXEC script command because it gives you the possibility to only start an MSI installation if the software has not been installed before. This will speed up the installation process in many computers.

Read more
You can click on the links below to read more about the two new conditions in Visual Installer’s scripting language:

> Check if a product already is installed
> Check if the operating system is 32 bit or 64 bit