PanelSwWixExtension4 3.3.0.154-rc.3
See the version list below for details.
Requires NuGet 2.7 or higher.
dotnet add package PanelSwWixExtension4 --version 3.3.0.154-rc.3
NuGet\Install-Package PanelSwWixExtension4 -Version 3.3.0.154-rc.3
<PackageReference Include="PanelSwWixExtension4" Version="3.3.0.154-rc.3" />
paket add PanelSwWixExtension4 --version 3.3.0.154-rc.3
#r "nuget: PanelSwWixExtension4, 3.3.0.154-rc.3"
// Install PanelSwWixExtension4 as a Cake Addin #addin nuget:?package=PanelSwWixExtension4&version=3.3.0.154-rc.3&prerelease // Install PanelSwWixExtension4 as a Cake Tool #tool nuget:?package=PanelSwWixExtension4&version=3.3.0.154-rc.3&prerelease
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
- 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 download the code, open the solution PanelSwWixExtension.sln in Visual Studio 2017 and build it.
Unit-test WiX are available in the solution folder 'UnitTests'. After building a unit test project, you'll need to shutdown Visual Studio before you can build PanelSwWixExtension project again. This is due to the unfortunate habit of Visual Studio to hold the extension file in use. You may find it convenient to build unit test projects from a command prompt to workaround this limitation
MSBuild UnitTests\ForceVersionUT\ForceVersionUT.wixproj /p:Configuration=Release /p:Platform=x86 /t:Rebuild "/p:SolutionDir=%CD%\\"
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.3.0.394 | 35 | 11/14/2024 |
5.3.0.394-psw-wix | 34 | 11/14/2024 |
5.2.1.391 | 86 | 11/6/2024 |
5.2.1.391-psw-wix | 74 | 11/6/2024 |
5.2.0.389 | 130 | 9/24/2024 |
5.2.0.389-psw-wix | 104 | 9/24/2024 |
5.1.2.387 | 92 | 9/19/2024 |
5.1.2.387-psw-wix | 77 | 9/19/2024 |
5.1.2.383 | 101 | 9/18/2024 |
5.1.2.383-psw-wix | 80 | 9/18/2024 |
5.1.2.381 | 123 | 7/18/2024 |
5.1.2.381-psw-wix | 73 | 7/18/2024 |
5.1.1.375 | 4,167 | 6/5/2024 |
5.1.1.375-psw-wix | 87 | 6/5/2024 |
5.1.0.373 | 103 | 5/30/2024 |
5.1.0.373-psw-wix | 94 | 5/30/2024 |
5.0.2.342 | 118 | 4/21/2024 |
5.0.2.342-psw-wix | 93 | 4/21/2024 |
5.0.1.339 | 94 | 4/18/2024 |
5.0.1.339-psw-wix | 81 | 4/18/2024 |
5.0.0.337 | 93 | 4/18/2024 |
5.0.0.337-psw-wix | 78 | 4/18/2024 |
5.0.0.335 | 215 | 4/14/2024 |
5.0.0.335-psw-wix | 178 | 4/14/2024 |
3.21.0.395 | 34 | 11/14/2024 |
3.21.0.395-psw-wix | 37 | 11/14/2024 |
3.20.1.392 | 59 | 11/6/2024 |
3.20.1.392-psw-wix | 73 | 11/6/2024 |
3.20.0.390 | 84 | 9/24/2024 |
3.20.0.390-psw-wix | 172 | 9/24/2024 |
3.19.2.388 | 77 | 9/19/2024 |
3.19.2.388-psw-wix | 88 | 9/19/2024 |
3.19.2.384 | 85 | 9/18/2024 |
3.19.2.384-psw-wix | 87 | 9/18/2024 |
3.19.2.380 | 93 | 7/18/2024 |
3.19.2.380-psw-wix | 199 | 7/18/2024 |
3.19.1.376 | 90 | 6/5/2024 |
3.19.1.376-psw-wix | 93 | 6/5/2024 |
3.19.0.374 | 87 | 5/30/2024 |
3.19.0.374-psw-wix | 103 | 5/30/2024 |
3.18.16.343 | 95 | 4/21/2024 |
3.18.16.343-psw-wix | 106 | 4/21/2024 |
3.18.15.340 | 90 | 4/18/2024 |
3.18.15.340-psw-wix | 77 | 4/18/2024 |
3.18.14.331 | 174 | 4/10/2024 |
3.18.14.331-psw-wix | 158 | 4/10/2024 |
3.18.13.330 | 120 | 4/2/2024 |
3.18.13.330-psw-wix | 136 | 4/2/2024 |
3.18.12.325 | 137 | 4/2/2024 |
3.18.12.325-psw-wix | 137 | 4/2/2024 |
3.18.11.323 | 130 | 4/1/2024 |
3.18.11.323-psw-wix | 128 | 4/1/2024 |
3.18.10.319 | 156 | 4/1/2024 |
3.18.10.319-psw-wix | 124 | 4/1/2024 |
3.18.9.318 | 117 | 3/28/2024 |
3.18.9.318-psw-wix | 122 | 3/28/2024 |
3.18.8.317 | 189 | 3/19/2024 |
3.18.8.317-psw-wix | 155 | 3/19/2024 |
3.18.7.316 | 283 | 3/12/2024 |
3.18.7.316-psw-wix | 197 | 3/12/2024 |
3.18.6.315 | 168 | 3/7/2024 |
3.18.6.315-psw-wix | 143 | 3/7/2024 |
3.18.5.314 | 140 | 3/5/2024 |
3.18.5.314-psw-wix | 170 | 3/5/2024 |
3.18.4.312 | 165 | 3/5/2024 |
3.18.4.312-psw-wix | 143 | 3/5/2024 |
3.18.3.311 | 169 | 3/4/2024 |
3.18.3.311-psw-wix | 152 | 3/4/2024 |
3.18.2.310 | 144 | 2/29/2024 |
3.18.2.310-psw-wix | 148 | 2/29/2024 |
3.18.1.309 | 188 | 2/26/2024 |
3.18.1.309-psw-wix | 267 | 2/26/2024 |
3.18.0.308 | 159 | 2/25/2024 |
3.18.0.308-psw-wix | 118 | 2/25/2024 |
3.17.10.307 | 154 | 2/21/2024 |
3.17.10.307-psw-wix | 177 | 2/21/2024 |
3.17.9.306 | 189 | 2/21/2024 |
3.17.9.306-psw-wix | 138 | 2/21/2024 |
3.17.9.305 | 168 | 2/21/2024 |
3.17.9.305-psw-wix | 118 | 2/21/2024 |
3.17.8.304 | 154 | 2/20/2024 |
3.17.8.304-psw-wix | 122 | 2/20/2024 |
3.17.7.303 | 128 | 2/20/2024 |
3.17.7.303-psw-wix | 118 | 2/20/2024 |
3.17.6.298 | 188 | 2/8/2024 |
3.17.6.298-psw-wix | 160 | 2/8/2024 |
3.17.5.297 | 162 | 2/6/2024 |
3.17.5.297-psw-wix | 136 | 2/6/2024 |
3.17.4.296 | 172 | 2/4/2024 |
3.17.4.296-psw-wix | 125 | 2/4/2024 |
3.17.3.294 | 179 | 2/4/2024 |
3.17.3.294-psw-wix | 135 | 2/4/2024 |
3.17.3.290 | 139 | 1/31/2024 |
3.17.3.290-psw-wix | 94 | 1/31/2024 |
3.17.2.289 | 161 | 1/31/2024 |
3.17.2.289-psw-wix | 122 | 1/31/2024 |
3.17.1.286 | 213 | 1/24/2024 |
3.17.1.286-psw-wix | 179 | 1/24/2024 |
3.17.0.285 | 211 | 1/24/2024 |
3.17.0.285-psw-wix | 184 | 1/24/2024 |
3.16.1.277 | 232 | 1/8/2024 |
3.16.1.277-psw-wix | 150 | 1/8/2024 |
3.16.0.275 | 155 | 1/7/2024 |
3.16.0.275-psw-wix | 173 | 1/7/2024 |
3.15.2.273 | 712 | 12/31/2023 |
3.15.2.273-psw-wix | 166 | 12/31/2023 |
3.15.1.272 | 199 | 12/27/2023 |
3.15.1.272-psw-wix | 132 | 12/27/2023 |
3.15.0.268 | 185 | 12/19/2023 |
3.15.0.268-psw-wix | 751 | 12/19/2023 |
3.14.0.266 | 177 | 12/11/2023 |
3.14.0.266-psw-wix | 131 | 12/11/2023 |
3.13.0.264 | 193 | 11/30/2023 |
3.13.0.264-psw-wix | 168 | 11/30/2023 |
3.12.0.261 | 138 | 11/29/2023 |
3.12.0.261-psw-wix | 152 | 11/29/2023 |
3.11.5.259 | 153 | 11/29/2023 |
3.11.5.259-psw-wix | 131 | 11/29/2023 |
3.11.4.257 | 122 | 11/28/2023 |
3.11.4.257-psw-wix | 145 | 11/28/2023 |
3.11.3.255 | 177 | 11/27/2023 |
3.11.3.255-psw-wix | 123 | 11/27/2023 |
3.11.2.247 | 277 | 10/24/2023 |
3.11.2.247-psw-wix | 242 | 10/24/2023 |
3.11.1.242 | 223 | 10/19/2023 |
3.11.1.242-psw-wix | 202 | 10/19/2023 |
3.11.0.241 | 235 | 10/19/2023 |
3.11.0.241-psw-wix | 235 | 10/19/2023 |
3.10.1.232 | 225 | 10/16/2023 |
3.10.1.232-psw-wix | 152 | 10/16/2023 |
3.10.0.231 | 236 | 10/2/2023 |
3.10.0.231-psw-wix | 238 | 10/2/2023 |
3.9.0.230 | 223 | 9/21/2023 |
3.9.0.230-psw-wix | 185 | 9/21/2023 |
3.8.0.227 | 5,003 | 9/18/2023 |
3.8.0.227-psw-wix | 242 | 9/18/2023 |
3.7.1.226 | 464 | 8/16/2023 |
3.7.1.226-psw-wix | 212 | 8/16/2023 |
3.7.0.221 | 421 | 7/13/2023 |
3.7.0.221-psw-wix | 202 | 7/13/2023 |
3.6.0.214 | 174 | 7/10/2023 |
3.6.0.214-psw-wix | 275 | 7/10/2023 |
3.5.3.210 | 159 | 6/26/2023 |
3.5.3.210-psw-wix | 202 | 6/26/2023 |
3.5.2.207 | 207 | 6/22/2023 |
3.5.2.207-psw-wix | 260 | 6/22/2023 |
3.5.1.196 | 8,068 | 6/1/2023 |
3.5.1.196-psw-wix | 237 | 6/1/2023 |
3.5.1.164 | 1,077 | 4/19/2023 |
3.5.0.163 | 223 | 4/19/2023 |
3.4.0.161 | 248 | 4/17/2023 |
3.4.0.160 | 232 | 4/16/2023 |
3.3.1.159 | 253 | 4/10/2023 |
3.3.0.157 | 235 | 4/9/2023 |
3.3.0.154-rc.3 | 122 | 3/28/2023 |
3.2.13.153-rc.3 | 113 | 3/27/2023 |
3.2.12.148-rc.3 | 84 | 3/12/2023 |
3.2.11.143-rc.3 | 97 | 3/12/2023 |
3.2.10.141-rc.2 | 101 | 2/8/2023 |
3.2.9.139-rc.2 | 110 | 2/5/2023 |
3.2.8.137-rc.2 | 119 | 2/2/2023 |
3.2.7.132-rc.2 | 109 | 1/26/2023 |
3.2.6.130-rc.2 | 118 | 1/25/2023 |
3.2.5.127-rc.1 | 112 | 1/4/2023 |
3.2.4.123-rc.1 | 118 | 1/3/2023 |
3.2.4.122-rc.1 | 118 | 1/3/2023 |