PanelSwWixExtension4 5.0.2.342

dotnet add package PanelSwWixExtension4 --version 5.0.2.342
NuGet\Install-Package PanelSwWixExtension4 -Version 5.0.2.342
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="5.0.2.342" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add PanelSwWixExtension4 --version 5.0.2.342
#r "nuget: PanelSwWixExtension4, 5.0.2.342"
#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.
// Install PanelSwWixExtension4 as a Cake Addin
#addin nuget:?package=PanelSwWixExtension4&version=5.0.2.342

// Install PanelSwWixExtension4 as a Cake Tool
#tool nuget:?package=PanelSwWixExtension4&version=5.0.2.342

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
      • When using PanelSwWix4.Sdk, support 7z and Zip containers
    • CustomSearch: Use a BundleExtension to perform custom searches without having to implement a complete WiX extension
    • !(bindpath.PanelSwWixExtension)\x86\DeferredExePackage.exe An executable that can execute arbitrary commands during chain execution
      • Use InstallArguments='--skip-until-here "[SomeExecutable]" "arg1" "arg2"': Create a process with any arguments after the --skip-until-here part
      • Use InstallArguments='--ignore-me': Ignore anything after the --ignore-me part
  • 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
    • -prd: Payload Root Folder. A prefix folder to add to all payloads
  • Immediate Actions:
    • DuplicateFolder: Duplicate an entire folder hierarchy. Processed at build time by adding entries to Directory, CreateFolder and DuplicateFile tables.
    • IsWindowsVersionOrGreater: Test whether Kernel32.dll's version is at least the given version. If yes, set the property to 1.
    • 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
    • PromptFileDowngrades Log each file that will be downgraded during the (re)install, and prompt the total downgrade count if larger than 0.
  • Deferred Actions:
    • ExecuteCommand: Launch a deferred command
    • 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 or disable Windows Features using DISM API. Features will be modified 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.
  • 27010: Dism error template for prompting user on failures to remove a Windows feature package.
  • 27011: ExecOn message template for prompting user on success with promptAlways.
  • 27012: Prompt on file downgrades
  • 27013: Prompt on failure to add a file to a ZIP archive
  • 27014: Prompt on failure to create a ZIP archive
  • 27015: Prompt on failure to unzip a ZIP archive
  • 27016: Prompt on failure to unzip a file from ZIP archive

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

The following properties denote available processor features. 1 means that the feature is available, 0 means that it is not available.

  • PF_ARM_64BIT_LOADSTORE_ATOMIC
  • PF_ARM_DIVIDE_INSTRUCTION_AVAILABLE
  • PF_ARM_EXTERNAL_CACHE_AVAILABLE
  • PF_ARM_FMAC_INSTRUCTIONS_AVAILABLE
  • PF_ARM_VFP_32_REGISTERS_AVAILABLE
  • PF_3DNOW_INSTRUCTIONS_AVAILABLE
  • PF_CHANNELS_ENABLED
  • PF_COMPARE_EXCHANGE_DOUBLE
  • PF_COMPARE_EXCHANGE128
  • PF_COMPARE64_EXCHANGE128
  • PF_FASTFAIL_AVAILABLE
  • PF_FLOATING_POINT_EMULATED
  • PF_FLOATING_POINT_PRECISION_ERRATA
  • PF_MMX_INSTRUCTIONS_AVAILABLE
  • PF_NX_ENABLED
  • PF_PAE_ENABLED
  • PF_RDTSC_INSTRUCTION_AVAILABLE
  • PF_RDWRFSGSBASE_AVAILABLE
  • PF_SECOND_LEVEL_ADDRESS_TRANSLATION
  • PF_SSE3_INSTRUCTIONS_AVAILABLE
  • PF_SSSE3_INSTRUCTIONS_AVAILABLE
  • PF_SSE4_1_INSTRUCTIONS_AVAILABLE
  • PF_SSE4_2_INSTRUCTIONS_AVAILABLE
  • PF_AVX_INSTRUCTIONS_AVAILABLE
  • PF_AVX2_INSTRUCTIONS_AVAILABLE
  • PF_AVX512F_INSTRUCTIONS_AVAILABLE
  • PF_VIRT_FIRMWARE_ENABLED
  • PF_XMMI_INSTRUCTIONS_AVAILABLE
  • PF_XMMI64_INSTRUCTIONS_AVAILABLE
  • PF_XSAVE_ENABLED
  • PF_ARM_V8_INSTRUCTIONS_AVAILABLE
  • PF_ARM_V8_CRYPTO_INSTRUCTIONS_AVAILABLE
  • PF_ARM_V8_CRC32_INSTRUCTIONS_AVAILABLE
  • PF_ARM_V81_ATOMIC_INSTRUCTIONS_AVAILABLE
  • PF_ARM_V82_DP_INSTRUCTIONS_AVAILABLE
  • PF_ARM_V83_JSCVT_INSTRUCTIONS_AVAILABLE
  • PF_ARM_V83_LRCPC_INSTRUCTIONS_AVAILABLE

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 dirs.proj -restore -p:UnitTest=ForceVersionUT
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
5.0.2.342 75 4/21/2024
5.0.2.342-psw-wix 69 4/21/2024
5.0.1.339 71 4/18/2024
5.0.1.339-psw-wix 63 4/18/2024
5.0.0.337 70 4/18/2024
5.0.0.337-psw-wix 60 4/18/2024
5.0.0.335 166 4/14/2024
5.0.0.335-psw-wix 137 4/14/2024
3.18.16.343 70 4/21/2024
3.18.16.343-psw-wix 69 4/21/2024
3.18.15.340 65 4/18/2024
3.18.15.340-psw-wix 57 4/18/2024
3.18.14.331 132 4/10/2024
3.18.14.331-psw-wix 114 4/10/2024
3.18.13.330 74 4/2/2024
3.18.13.330-psw-wix 94 4/2/2024
3.18.12.325 94 4/2/2024
3.18.12.325-psw-wix 101 4/2/2024
3.18.11.323 80 4/1/2024
3.18.11.323-psw-wix 92 4/1/2024
3.18.10.319 116 4/1/2024
3.18.10.319-psw-wix 77 4/1/2024
3.18.9.318 67 3/28/2024
3.18.9.318-psw-wix 82 3/28/2024
3.18.8.317 134 3/19/2024
3.18.8.317-psw-wix 111 3/19/2024
3.18.7.316 222 3/12/2024
3.18.7.316-psw-wix 150 3/12/2024
3.18.6.315 123 3/7/2024
3.18.6.315-psw-wix 105 3/7/2024
3.18.5.314 95 3/5/2024
3.18.5.314-psw-wix 136 3/5/2024
3.18.4.312 116 3/5/2024
3.18.4.312-psw-wix 101 3/5/2024
3.18.3.311 129 3/4/2024
3.18.3.311-psw-wix 115 3/4/2024
3.18.2.310 104 2/29/2024
3.18.2.310-psw-wix 111 2/29/2024
3.18.1.309 132 2/26/2024
3.18.1.309-psw-wix 100 2/26/2024
3.18.0.308 118 2/25/2024
3.18.0.308-psw-wix 79 2/25/2024
3.17.10.307 111 2/21/2024
3.17.10.307-psw-wix 139 2/21/2024
3.17.9.306 146 2/21/2024
3.17.9.306-psw-wix 103 2/21/2024
3.17.9.305 130 2/21/2024
3.17.9.305-psw-wix 77 2/21/2024
3.17.8.304 109 2/20/2024
3.17.8.304-psw-wix 86 2/20/2024
3.17.7.303 88 2/20/2024
3.17.7.303-psw-wix 81 2/20/2024
3.17.6.298 148 2/8/2024
3.17.6.298-psw-wix 124 2/8/2024
3.17.5.297 119 2/6/2024
3.17.5.297-psw-wix 99 2/6/2024
3.17.4.296 125 2/4/2024
3.17.4.296-psw-wix 86 2/4/2024
3.17.3.294 132 2/4/2024
3.17.3.294-psw-wix 100 2/4/2024
3.17.3.290 96 1/31/2024
3.17.3.290-psw-wix 63 1/31/2024
3.17.2.289 119 1/31/2024
3.17.2.289-psw-wix 79 1/31/2024
3.17.1.286 155 1/24/2024
3.17.1.286-psw-wix 146 1/24/2024
3.17.0.285 171 1/24/2024
3.17.0.285-psw-wix 147 1/24/2024
3.16.1.277 189 1/8/2024
3.16.1.277-psw-wix 115 1/8/2024
3.16.0.275 116 1/7/2024
3.16.0.275-psw-wix 140 1/7/2024
3.15.2.273 384 12/31/2023
3.15.2.273-psw-wix 127 12/31/2023
3.15.1.272 155 12/27/2023
3.15.1.272-psw-wix 97 12/27/2023
3.15.0.268 144 12/19/2023
3.15.0.268-psw-wix 203 12/19/2023
3.14.0.266 140 12/11/2023
3.14.0.266-psw-wix 95 12/11/2023
3.13.0.264 155 11/30/2023
3.13.0.264-psw-wix 128 11/30/2023
3.12.0.261 103 11/29/2023
3.12.0.261-psw-wix 110 11/29/2023
3.11.5.259 116 11/29/2023
3.11.5.259-psw-wix 97 11/29/2023
3.11.4.257 91 11/28/2023
3.11.4.257-psw-wix 110 11/28/2023
3.11.3.255 137 11/27/2023
3.11.3.255-psw-wix 90 11/27/2023
3.11.2.247 226 10/24/2023
3.11.2.247-psw-wix 205 10/24/2023
3.11.1.242 182 10/19/2023
3.11.1.242-psw-wix 161 10/19/2023
3.11.0.241 193 10/19/2023
3.11.0.241-psw-wix 198 10/19/2023
3.10.1.232 181 10/16/2023
3.10.1.232-psw-wix 117 10/16/2023
3.10.0.231 195 10/2/2023
3.10.0.231-psw-wix 200 10/2/2023
3.9.0.230 189 9/21/2023
3.9.0.230-psw-wix 148 9/21/2023
3.8.0.227 2,485 9/18/2023
3.8.0.227-psw-wix 205 9/18/2023
3.7.1.226 350 8/16/2023
3.7.1.226-psw-wix 187 8/16/2023
3.7.0.221 276 7/13/2023
3.7.0.221-psw-wix 167 7/13/2023
3.6.0.214 154 7/10/2023
3.6.0.214-psw-wix 237 7/10/2023
3.5.3.210 150 6/26/2023
3.5.3.210-psw-wix 165 6/26/2023
3.5.2.207 186 6/22/2023
3.5.2.207-psw-wix 221 6/22/2023
3.5.1.196 5,315 6/1/2023
3.5.1.196-psw-wix 201 6/1/2023
3.5.1.164 331 4/19/2023
3.5.0.163 200 4/19/2023
3.4.0.161 228 4/17/2023
3.4.0.160 210 4/16/2023
3.3.1.159 232 4/10/2023
3.3.0.157 212 4/9/2023
3.3.0.154-rc.3 111 3/28/2023
3.2.13.153-rc.3 104 3/27/2023
3.2.12.148-rc.3 74 3/12/2023
3.2.11.143-rc.3 89 3/12/2023
3.2.10.141-rc.2 89 2/8/2023
3.2.9.139-rc.2 97 2/5/2023
3.2.8.137-rc.2 104 2/2/2023
3.2.7.132-rc.2 95 1/26/2023
3.2.6.130-rc.2 104 1/25/2023
3.2.5.127-rc.1 103 1/4/2023
3.2.4.123-rc.1 107 1/3/2023
3.2.4.122-rc.1 108 1/3/2023