https://github.com/slidoapp/slido-for-msbuild
Slido tasks for Microsoft Build system.
https://github.com/slidoapp/slido-for-msbuild
csharp dotnet msbuild nuget
Last synced: 3 months ago
JSON representation
Slido tasks for Microsoft Build system.
- Host: GitHub
- URL: https://github.com/slidoapp/slido-for-msbuild
- Owner: slidoapp
- License: mit
- Created: 2025-08-25T12:05:26.000Z (11 months ago)
- Default Branch: main
- Last Pushed: 2025-09-03T13:31:23.000Z (11 months ago)
- Last Synced: 2025-10-24T18:03:58.472Z (9 months ago)
- Topics: csharp, dotnet, msbuild, nuget
- Language: C#
- Homepage:
- Size: 37.1 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
# Slido Build Tasks
> Build tasks for **msbuild** by Slido developers.
## ChangeFileVersion Task
> Build task to change the Version in the File table of MSI package.
This task has been added to handle cases where files need to be downgraded. By default, Windows Installer does not overwrite files if the version in the package is the same or lower than the one already installed (for `*.dll` files, this corresponds to the `AssemblyVersion`). If a problematic file needs to be downgraded, there is no built-in mechanism to achieve this. To work around this, we must “trick” Windows Installer into believing that a higher version is being installed, even though the actual file version is lower.
To use this task, first add the `` element to the `.targets` file and specify the `TaskName` and `AssemblyFile` attributes. The `TaskName` is in this case `Slido.Build.ChangeFileVersion`.
Then add `` with e.g. `` elements as in following example. `Include` attribute contains the file name that should have the version updated and the `` element contains the new version value.
```xml
5.11.1.1
4.3.0.1
```
To use the task in particular target, Create `` element with `FIles` and `MsiPath` attributes. In the example the task is executed in the `AfterCompileAndLink` target where the MSI database is already build.
```xml
```
## License
Source code is licensed under [MIT License](LICENSE.txt).