PanelSwWixExtension4 3.5.3.210-psw-wix

This is a prerelease version of PanelSwWixExtension4.
There is a newer version of this package available.
See the version list below for details.

Requires NuGet 2.7 or higher.

dotnet add package PanelSwWixExtension4 --version 3.5.3.210-psw-wix
                    
NuGet\Install-Package PanelSwWixExtension4 -Version 3.5.3.210-psw-wix
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="PanelSwWixExtension4" Version="3.5.3.210-psw-wix" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="PanelSwWixExtension4" Version="3.5.3.210-psw-wix" />
                    
Directory.Packages.props
<PackageReference Include="PanelSwWixExtension4" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add PanelSwWixExtension4 --version 3.5.3.210-psw-wix
                    
#r "nuget: PanelSwWixExtension4, 3.5.3.210-psw-wix"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package PanelSwWixExtension4@3.5.3.210-psw-wix
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=PanelSwWixExtension4&version=3.5.3.210-psw-wix&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=PanelSwWixExtension4&version=3.5.3.210-psw-wix&prerelease
                    
Install as a Cake Tool

PanelSwWixExtension WiX v3 NuGet version (PanelSwWixExtension) WiX v4 NuGet version (PanelSwWixExtension4)

PanelSwWixExtension from the creator of JetBA is the most comprehensive open source WiX extension. I would like to thank JetBrains for their support of this project

PanelSwWixExtension WiX Elements

  • Bundle elements:
    • ContainerTemplate: A container template to which bundle payloads can be assigned
  • Heat extension command line arguments:
    • -inc: Semicolon seperated list of filename to include. Wildcards are accepted. If specified, any file not matching the pattern will be excluded
    • -exc: Semicolon seperated list of filename to exclude. Wildcards are accepted. If specified, any file matching the pattern will be excluded
  • Immediate Actions:
    • Md5Hash: Computes MD5 hash.
    • WmiSearch: Execute a WMI query.
    • PathSearch: Search for a file on PATH environment variable folder list.
    • VersionCompare: Compare two versions, set result to property to value in range -4 to +4, denoting the version part that was different (-+4 if Major part was different, -+3 for Minor part, etc.)
    • ForceVersion: Force a specified version for a file. Version overwrite is done on runtime in the MSI database.
    • AccountSidSearch: Lookup an account's SID by account name.
    • JsonJpathSearch: Read JSON values
    • DiskSpace: Calculate available disk space for a target directory
    • CertificateHashSearch: Find a certificate hash in local system MY store.
    • Evaluate: Evaluate mathematical expressions and store result in property.
    • SetPropertyFromPipe: Allows setting property from a pipe.
    • SqlSearch: Execute a SQL query and place result in a property.
    • ReadIniValues: Reads .INI file values.
    • XmlSearch: Read XML values.
    • RegularExpression: Execute a Regular Expression to replace or find matches in property values and in file contents.
    • MsiSqlQuery: Execute a MSI-SQL query on the MSI database.
    • CreateSelfSignCertificate: Create a self-sign certificate that can then be installed by WixIisExtension.
    • ToLowerCase: Convert property value to lowercase.
    • CustomPatchRef Support referencing custom table rows in a patch
    • Payload Support extracting files from Binary table temporarilty during MSI execution
  • Deferred Actions:
    • RestartLocalResources: Register processes with the Restart Manager if they reside in the specified folder
    • XslTransform: Apply a XSL transform on an installed XML file
    • WebsiteConfig: currently, can only stop a website
    • JsonJPath: Set values in JSON-formatted file.
    • Dism: Enable Windows Feature using DISM API. Features will be installed when the parent component is being installed or repaired.
    • ZipFile: Creates a ZIP archive from selected files.
    • Unzip: Extract a ZIP archive to selected folder.
    • CustomUninstallKey: Overwrite registry values in the product's Uninstall registry key
    • RemoveRegistryValue: Removes registry values. Complements the standard RemoveRegistryValue WiX element that will only remove registry values during installation.
    • ExecOn: Execute a custom command on component action.
    • TaskScheduler: Add a task to Windows Task Scheduler.
    • DeletePath: Delete folder or file specified by a path.
    • FileRegex: Execute a Regular Expression to perform find & replace operations within files.
    • ShellExecute: Call ShellExecuteEx with parameters.
    • Telemetry: Send telemetry data to a given URL.
    • InstallUtil: Install a .NET assembly service.
    • TopShelf: Install a TopShelf based service.
    • BackupAndRestore: Backup a file before install or upgarde and restore it after.
    • SqlScript: Execute SQL scripts, optionally with text replacements.
    • SplitFile: Splits a file to parts during build, and reconstruct it during install. Used to workaround MSI limitation of 2GB file size.

Preprocessor

  • $(psw.VarNullOrEmpty(VAR_NAME)): Return 1 if the variable is not defined, or if it defined as empty. Return 0 otherwise
  • $(psw.AutoGuid(x,y,z,...)): Return a pseudo-random UUID per arguments
  • $(psw.FileExists(path)): Return 1 if the file exists, 0 otherwise
  • $(psw.DirExists(path)): Return 1 if the folder exists, 0 otherwise
  • $(psw.DirEmpty(path)): Return 1 if the folder doesn't exist or if it has no files (including in subfolders). Return 0 otherwise

Custom Actions

  • TerminateSuccessfully_Immediate: Terminates the installation with a successful indication. Executed in-script.
  • TerminateSuccessfully_Deferred: Terminates the installation with a successful indication. Deferred execution.
  • SplitPath: Split a full path supplied in 'FULL_PATH_TO_SPLIT' property and places the parts in properties SPLIT_DRIVE, SPLIT_FOLDER, SPLIT_FILE_NAME, SPLIT_FILE_EXTENSION.
  • PathExists: Tests whether the path supplied in 'FULL_PATH_TO_TEST' property exists. Sets 'PATH_EXISTS' property to 1 if it exists or clears it if it doesn't.
  • SplitString: Splits a string. Property name specified in 'PROPERTY_TO_SPLIT' and split token specified in 'STRING_SPLIT_TOKEN'. Results are stored in properties following the name supplied in 'PROPERTY_TO_SPLIT'. For example, say PROPERTY_TO_SPLIT="MY_PROP", MY_PROP="1,2,3" and STRING_SPLIT_TOKEN=",". Scheduling SplitString custom action will yield properties MY_PROP_0="1", MY_PROP_1="2" and MY_PROP_2="3".
  • TrimString: Trim whitespace characters in property with name specified in 'PROPERTY_TO_TRIM'.

Error codes

PanelSwWixExtension uses error codes in Error table:

  • 27000: TopShelf error template for prompting user on errors.
  • 27001: ExecOn error template for prompting user on errors.
  • 27002: ServiceConfig error template for prompting user on errors.
  • 27003: Dism error template for prompting user on failures to add a Windows feature package.
  • 27004: Dism error template for prompting user on failures to enable a Windows feature.
  • 27005: SqlScript error template for prompting user on errors.
  • 27006: ExecOn error template for prompting user on console output parsing.
  • 27007: WebsiteConfig error template for prompting user on errors.
  • 27008: SqlSearch error template for prompting user on errors.
  • 27009: JsonJpath error template for prompting user on errors.

Properties

The following properties hold localized built-in account names. To use them, add a PropertyRef element.

  • DOMAIN_ADMINISTRATORS
  • DOMAIN_GUESTS
  • DOMAIN_USERS
  • ENTERPRISE_DOMAIN_CONTROLLERS
  • DOMAIN_DOMAIN_CONTROLLERS
  • DOMAIN_COMPUTERS
  • BUILTIN_ADMINISTRATORS
  • BUILTIN_GUESTS
  • BUILTIN_USERS
  • LOCAL_ADMIN
  • LOCAL_GUEST
  • ACCOUNT_OPERATORS
  • BACKUP_OPERATORS
  • PRINTER_OPERATORS
  • SERVER_OPERATORS
  • AUTHENTICATED_USERS
  • PERSONAL_SELF
  • CREATOR_OWNER
  • CREATOR_GROUP
  • LOCAL_SYSTEM
  • POWER_USERS
  • EVERYONE
  • REPLICATOR
  • INTERACTIVE
  • NETWORK
  • SERVICE
  • RESTRICTED_CODE
  • WRITE_RESTRICTED_CODE
  • ANONYMOUS
  • SCHEMA_ADMINISTRATORS
  • CERT_SERV_ADMINISTRATORS
  • RAS_SERVERS
  • ENTERPRISE_ADMINS
  • GROUP_POLICY_ADMINS
  • ALIAS_PREW2KCOMPACC
  • LOCAL_SERVICE
  • NETWORK_SERVICE
  • REMOTE_DESKTOP
  • NETWORK_CONFIGURATION_OPS
  • PERFMON_USERS
  • PERFLOG_USERS
  • IIS_USERS
  • CRYPTO_OPERATORS
  • OWNER_RIGHTS
  • EVENT_LOG_READERS
  • ENTERPRISE_RO_DCs
  • CERTSVC_DCOM_ACCESS

The following properties hold localized CSIDL folders. To use them, add a PropertyRef element.

  • UserDesktopFolder: CSIDL_DESKTOPDIRECTORY

Building

PanelSwWixExtension require the following prerequisites to build:

  • CMake: CMake path can be specified in 'CMakeDir' property in 'TidyBuild.custom.props'
  • ADK installed. Specifically, Dism API should be installed. Set DismApi folder path in 'DismApiDir' property in 'TidyBuild.custom.props'
  • Update git submodules

To build the extension execute:

msbuild dirs.proj -restore "-p:SolutionDir=%CD%\"

Unit-test WiX are available in the solution folder 'UnitTests'. To build a unit test project execute:

msbuild UnitTests\ForceVersionUT\ForceVersionUT.wixproj -restore /p:Configuration=Release /p:Platform=x86 /t:Rebuild "/p:SolutionDir=%CD%\\"
There are no supported framework assets in this package.

Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
6.5.0.484 293 9/17/2025
6.5.0.484-psw-wix 287 9/17/2025
6.4.0.483 218 8/27/2025
6.4.0.483-psw-wix 175 8/27/2025
6.4.0.482 124 8/17/2025
6.4.0.482-psw-wix 121 8/17/2025
6.3.1.481 179 7/7/2025
6.3.1.481-psw-wix 361 7/7/2025
6.3.0.480 164 7/6/2025
6.3.0.480-psw-wix 160 7/6/2025
6.2.0.479 174 7/3/2025
6.2.0.479-psw-wix 158 7/3/2025
6.1.0.477 193 5/19/2025
6.1.0.477-psw-wix 165 5/19/2025
6.0.1.476 237 4/22/2025
6.0.1.476-psw-wix 584 4/22/2025
6.0.0.475 227 4/20/2025
6.0.0.475-psw-wix 204 4/20/2025
5.9.0.466 273 4/1/2025
5.9.0.466-psw-wix 213 4/1/2025
5.8.5.465 549 3/25/2025
5.8.5.465-psw-wix 622 3/25/2025
5.8.4.464 209 3/19/2025
5.8.4.464-psw-wix 205 3/19/2025
5.8.3.463 277 3/10/2025
5.8.3.463-psw-wix 224 3/10/2025
5.8.2.462 280 3/5/2025
5.8.2.462-psw-wix 311 3/5/2025
5.8.1.461 292 3/4/2025
5.8.1.461-psw-wix 251 3/4/2025
5.8.0.460 222 3/3/2025
5.8.0.460-psw-wix 205 3/3/2025
5.7.2.457 216 2/18/2025
5.7.2.457-psw-wix 159 2/18/2025
5.7.1.454 173 2/17/2025
5.7.1.454-psw-wix 140 2/17/2025
5.7.0.451 151 2/16/2025
5.7.0.451-psw-wix 184 2/16/2025
5.6.1.448 172 2/12/2025
5.6.1.448-psw-wix 159 2/12/2025
5.6.0.445 164 2/11/2025
5.6.0.445-psw-wix 162 2/11/2025
5.5.4.442 191 1/29/2025
5.5.4.442-psw-wix 152 1/29/2025
5.5.3.439 188 1/23/2025
5.5.3.439-psw-wix 129 1/23/2025
5.5.2.435 157 1/13/2025
5.5.2.435-psw-wix 151 1/13/2025
5.5.1.432 169 1/7/2025
5.5.1.432-psw-wix 140 1/7/2025
5.5.0.429 176 1/5/2025
5.5.0.429-psw-wix 162 1/5/2025
5.4.5.422 6,998 12/8/2024
5.4.5.422-psw-wix 180 12/8/2024
5.4.4.417 172 12/8/2024
5.4.4.417-psw-wix 138 12/8/2024
5.4.3.414 169 12/1/2024
5.4.3.414-psw-wix 117 12/1/2024
5.4.2.412 158 11/26/2024
5.4.2.412-psw-wix 136 11/26/2024
5.4.2.409 158 11/26/2024
5.4.2.409-psw-wix 126 11/26/2024
5.4.1.407 154 11/26/2024
5.4.1.407-psw-wix 134 11/26/2024
5.4.0.406 158 11/25/2024
5.4.0.406-psw-wix 142 11/25/2024
5.3.1.403 161 11/21/2024
5.3.1.403-psw-wix 130 11/21/2024
5.3.1.399 156 11/18/2024
5.3.1.399-psw-wix 125 11/18/2024
5.3.0.394 169 11/14/2024
5.3.0.394-psw-wix 133 11/14/2024
5.2.1.391 170 11/6/2024
5.2.1.391-psw-wix 149 11/6/2024
5.2.0.389 1,403 9/24/2024
5.2.0.389-psw-wix 162 9/24/2024
5.1.2.387 185 9/19/2024
5.1.2.387-psw-wix 138 9/19/2024
5.1.2.383 173 9/18/2024
5.1.2.383-psw-wix 149 9/18/2024
5.1.2.381 196 7/18/2024
5.1.2.381-psw-wix 132 7/18/2024
5.1.1.375 4,879 6/5/2024
5.1.1.375-psw-wix 145 6/5/2024
5.1.0.373 173 5/30/2024
5.1.0.373-psw-wix 144 5/30/2024
5.0.2.342 185 4/21/2024
5.0.2.342-psw-wix 149 4/21/2024
5.0.1.339 172 4/18/2024
5.0.1.339-psw-wix 142 4/18/2024
5.0.0.337 172 4/18/2024
5.0.0.337-psw-wix 140 4/18/2024
5.0.0.335 294 4/14/2024
5.0.0.335-psw-wix 234 4/14/2024
3.24.2.458 184 2/18/2025
3.24.2.458-psw-wix 356 2/18/2025
3.24.1.449 159 2/12/2025
3.24.1.449-psw-wix 152 2/12/2025
3.24.0.446 152 2/11/2025
3.24.0.446-psw-wix 157 2/11/2025
3.23.4.443 156 1/29/2025
3.23.4.443-psw-wix 128 1/29/2025
3.23.3.441 145 1/23/2025
3.23.3.441-psw-wix 129 1/23/2025
3.23.2.436 147 1/13/2025
3.23.2.436-psw-wix 139 1/13/2025
3.23.1.433 140 1/7/2025
3.23.1.433-psw-wix 142 1/7/2025
3.23.0.430 170 1/5/2025
3.23.0.430-psw-wix 123 1/5/2025
3.22.4.426 154 12/8/2024
3.22.4.426-psw-wix 485 12/8/2024
3.22.3.416 172 12/4/2024
3.22.3.416-psw-wix 139 12/4/2024
3.22.2.415 150 12/1/2024
3.22.2.415-psw-wix 139 12/1/2024
3.22.1.410 153 11/26/2024
3.22.1.410-psw-wix 139 11/26/2024
3.22.0.408 147 11/26/2024
3.22.0.408-psw-wix 119 11/26/2024
3.21.1.404 157 11/21/2024
3.21.1.404-psw-wix 120 11/21/2024
3.21.1.400 182 11/18/2024
3.21.1.400-psw-wix 131 11/18/2024
3.21.0.395 162 11/14/2024
3.21.0.395-psw-wix 159 11/14/2024
3.20.1.392 162 11/6/2024
3.20.1.392-psw-wix 141 11/6/2024
3.20.0.390 168 9/24/2024
3.20.0.390-psw-wix 427 9/24/2024
3.19.2.388 170 9/19/2024
3.19.2.388-psw-wix 147 9/19/2024
3.19.2.384 161 9/18/2024
3.19.2.384-psw-wix 142 9/18/2024
3.19.2.380 172 7/18/2024
3.19.2.380-psw-wix 503 7/18/2024
3.19.1.376 159 6/5/2024
3.19.1.376-psw-wix 146 6/5/2024
3.19.0.374 162 5/30/2024
3.19.0.374-psw-wix 160 5/30/2024
3.18.16.343 173 4/21/2024
3.18.16.343-psw-wix 170 4/21/2024
3.18.15.340 161 4/18/2024
3.18.15.340-psw-wix 133 4/18/2024
3.18.14.331 248 4/10/2024
3.18.14.331-psw-wix 216 4/10/2024
3.18.13.330 204 4/2/2024
3.18.13.330-psw-wix 202 4/2/2024
3.18.12.325 200 4/2/2024
3.18.12.325-psw-wix 202 4/2/2024
3.18.11.323 216 4/1/2024
3.18.11.323-psw-wix 184 4/1/2024
3.18.10.319 237 4/1/2024
3.18.10.319-psw-wix 181 4/1/2024
3.18.9.318 208 3/28/2024
3.18.9.318-psw-wix 189 3/28/2024
3.18.8.317 281 3/19/2024
3.18.8.317-psw-wix 214 3/19/2024
3.18.7.316 365 3/12/2024
3.18.7.316-psw-wix 249 3/12/2024
3.18.6.315 245 3/7/2024
3.18.6.315-psw-wix 196 3/7/2024
3.18.5.314 205 3/5/2024
3.18.5.314-psw-wix 218 3/5/2024
3.18.4.312 239 3/5/2024
3.18.4.312-psw-wix 193 3/5/2024
3.18.3.311 246 3/4/2024
3.18.3.311-psw-wix 216 3/4/2024
3.18.2.310 217 2/29/2024
3.18.2.310-psw-wix 208 2/29/2024
3.18.1.309 308 2/26/2024
3.18.1.309-psw-wix 323 2/26/2024
3.18.0.308 237 2/25/2024
3.18.0.308-psw-wix 171 2/25/2024
3.17.10.307 227 2/21/2024
3.17.10.307-psw-wix 240 2/21/2024
3.17.9.306 261 2/21/2024
3.17.9.306-psw-wix 197 2/21/2024
3.17.9.305 242 2/21/2024
3.17.9.305-psw-wix 182 2/21/2024
3.17.8.304 226 2/20/2024
3.17.8.304-psw-wix 179 2/20/2024
3.17.7.303 197 2/20/2024
3.17.7.303-psw-wix 176 2/20/2024
3.17.6.298 265 2/8/2024
3.17.6.298-psw-wix 223 2/8/2024
3.17.5.297 233 2/6/2024
3.17.5.297-psw-wix 183 2/6/2024
3.17.4.296 236 2/4/2024
3.17.4.296-psw-wix 191 2/4/2024
3.17.3.294 251 2/4/2024
3.17.3.294-psw-wix 197 2/4/2024
3.17.3.290 214 1/31/2024
3.17.3.290-psw-wix 159 1/31/2024
3.17.2.289 240 1/31/2024
3.17.2.289-psw-wix 164 1/31/2024
3.17.1.286 457 1/24/2024
3.17.1.286-psw-wix 233 1/24/2024
3.17.0.285 279 1/24/2024
3.17.0.285-psw-wix 237 1/24/2024
3.16.1.277 293 1/8/2024
3.16.1.277-psw-wix 202 1/8/2024
3.16.0.275 221 1/7/2024
3.16.0.275-psw-wix 243 1/7/2024
3.15.2.273 1,217 12/31/2023
3.15.2.273-psw-wix 216 12/31/2023
3.15.1.272 261 12/27/2023
3.15.1.272-psw-wix 188 12/27/2023
3.15.0.268 258 12/19/2023
3.15.0.268-psw-wix 812 12/19/2023
3.14.0.266 263 12/11/2023
3.14.0.266-psw-wix 192 12/11/2023
3.13.0.264 260 11/30/2023
3.13.0.264-psw-wix 285 11/30/2023
3.12.0.261 191 11/29/2023
3.12.0.261-psw-wix 199 11/29/2023
3.11.5.259 207 11/29/2023
3.11.5.259-psw-wix 179 11/29/2023
3.11.4.257 169 11/28/2023
3.11.4.257-psw-wix 210 11/28/2023
3.11.3.255 248 11/27/2023
3.11.3.255-psw-wix 157 11/27/2023
3.11.2.247 351 10/24/2023
3.11.2.247-psw-wix 291 10/24/2023
3.11.1.242 274 10/19/2023
3.11.1.242-psw-wix 266 10/19/2023
3.11.0.241 300 10/19/2023
3.11.0.241-psw-wix 282 10/19/2023
3.10.1.232 297 10/16/2023
3.10.1.232-psw-wix 203 10/16/2023
3.10.0.231 289 10/2/2023
3.10.0.231-psw-wix 297 10/2/2023
3.9.0.230 286 9/21/2023
3.9.0.230-psw-wix 259 9/21/2023
3.8.0.227 6,890 9/18/2023
3.8.0.227-psw-wix 302 9/18/2023
3.7.1.226 531 8/16/2023
3.7.1.226-psw-wix 293 8/16/2023
3.7.0.221 959 7/13/2023
3.7.0.221-psw-wix 267 7/13/2023
3.6.0.214 254 7/10/2023
3.6.0.214-psw-wix 342 7/10/2023
3.5.3.210 237 6/26/2023
3.5.3.210-psw-wix 291 6/26/2023
3.5.2.207 288 6/22/2023
3.5.2.207-psw-wix 337 6/22/2023
3.5.1.196 23,963 6/1/2023
3.5.1.196-psw-wix 327 6/1/2023
3.5.1.164 1,378 4/19/2023
3.5.0.163 325 4/19/2023
3.4.0.161 338 4/17/2023
3.4.0.160 324 4/16/2023
3.3.1.159 343 4/10/2023
3.3.0.157 406 4/9/2023
3.3.0.154-rc.3 199 3/28/2023
3.2.13.153-rc.3 192 3/27/2023
3.2.12.148-rc.3 151 3/12/2023
3.2.11.143-rc.3 163 3/12/2023
3.2.10.141-rc.2 176 2/8/2023
3.2.9.139-rc.2 193 2/5/2023
3.2.8.137-rc.2 194 2/2/2023
3.2.7.132-rc.2 178 1/26/2023
3.2.6.130-rc.2 202 1/25/2023
3.2.5.127-rc.1 191 1/4/2023
3.2.4.123-rc.1 189 1/3/2023
3.2.4.122-rc.1 196 1/3/2023