Skip to content

# Creating MSI Packager

# Creating a Single MSI Package

## Prerequisites

- WiX Toolset installed
- OpenSSL installed
- Microsoft Windows SDK (for signtool.exe) â€“ Download here
- Administrator privilege required

## Part 1: Build the MSI

### Step 1 â€“ Download the base package

From the deployment packager console, download either `minimal.zip` or other installers from the deployment section.

### Step 2 â€“ Set up the project directory

Extract the downloaded zip to `C:\WixProject`. This will create:

    C:\WixProject\
        Files\
        Product.wxs

### Step 3 â€“ Add your application files

Extract your application zip into the `Files` folder:

    C:\WixProject\Files\minimal.exe
    C:\WixProject\Files\clagnt.dat

### Step 4 â€“ Edit the WiX configuration

Open `C:\WixProject\Product.wxs` and update filenames on lines 30 and 31 to match your files. Save the file.

### Step 5 â€“ Architecture support

Follow prerequisites, replace `minimal.exe` and `clagnt.dat`, then run the provided script to create a single MSI installer for both 32-bit and 64-bit machines.

### Step 6 â€“ Compile and link the MSI

Run these commands in `C:\WixProject`:

    candle.exe Product.wxs
    light.exe Product.wixobj -o minimalInstaller.msi

`minimalInstaller.msi` will be generated. Double-click to launch the application.

## Part 2: Create a Self-Signed Certificate (Optional)

Run the following OpenSSL commands:

    openssl genrsa -out codesign.key 4096
    openssl req -new -x509 -key codesign.key -out codesign.crt -days 1095 -subj "/CN=QH"
    openssl pkcs12 -export -out codesign.pfx -inkey codesign.key -in codesign.crt

Note: Remember the password you set â€” it will be needed during signing.

## Part 3: Sign the MSI (Optional)

### Step 1 â€“ Install the signing tool

Install the Microsoft Windows SDK. `signtool.exe` will be available at:

    C:\Program Files (x86)\Windows Kits\10\bin\10.0.26100.0\x64\

### Step 2 â€“ Sign the MSI

Run the following command (replace `Admin@123` with your certificate password):

    signtool.exe sign /f codesign.pfx /p Admin@123 /fd SHA256 minimalInstaller.msi

Expected output:

    Done Adding Additional Store
    Successfully signed: minimalInstaller.msi

âœ… MSI is now built and signed.

Was this page helpful?
Yes No
Scroll back to top