diff --git a/RemoteApplicationPublisher.sln b/RemoteApplicationPublisher.sln
index 22d3dd6..7bb86f1 100644
--- a/RemoteApplicationPublisher.sln
+++ b/RemoteApplicationPublisher.sln
@@ -19,7 +19,6 @@ Global
{E23CF4FE-4FA6-4554-8A06-D741D336DB0A}.Release|x64.Build.0 = Release|x64
{5EEA7966-CB7D-4FE5-8B6E-7B416A4C4EB0}.Debug|x64.ActiveCfg = Debug|x64
{5EEA7966-CB7D-4FE5-8B6E-7B416A4C4EB0}.Release|x64.ActiveCfg = Release|x64
- {5EEA7966-CB7D-4FE5-8B6E-7B416A4C4EB0}.Release|x64.Build.0 = Release|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/RemoteApplicationPublisher/Properties/AssemblyInfo.cs b/RemoteApplicationPublisher/Properties/AssemblyInfo.cs
new file mode 100644
index 0000000..6595a7f
--- /dev/null
+++ b/RemoteApplicationPublisher/Properties/AssemblyInfo.cs
@@ -0,0 +1,21 @@
+
+using System.Reflection;
+using System.Resources;
+
+// General Information
+[assembly: AssemblyTitle("Remote Application Publisher")]
+[assembly: AssemblyDescription("Remote Application Publisher")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("One Identity LLC")]
+[assembly: AssemblyProduct("RemoteApplicationPublisher")]
+[assembly: AssemblyCopyright("Copyright 2022 One Identity LLC")]
+[assembly: AssemblyTrademark("One Identity LLC (TM)")]
+[assembly: AssemblyCulture("")]
+
+// Version information -- replaced at build time
+[assembly: AssemblyVersion("1.1.0.32432")]
+[assembly: AssemblyFileVersion("1.1.0.32432")]
+[assembly: NeutralResourcesLanguageAttribute( "en-US" )]
+
+
+
diff --git a/RemoteApplicationPublisher/RemoteApplicationPublisher.csproj b/RemoteApplicationPublisher/RemoteApplicationPublisher.csproj
index 5bb9cb0..c650918 100644
--- a/RemoteApplicationPublisher/RemoteApplicationPublisher.csproj
+++ b/RemoteApplicationPublisher/RemoteApplicationPublisher.csproj
@@ -7,6 +7,7 @@
true
disable
app.manifest
+ false
RemoteApplicationPublisher.Program
x64
x64
diff --git a/RemoteApplicationPublisherSetup/RemoteApplicationPublisherSetup.wixproj b/RemoteApplicationPublisherSetup/RemoteApplicationPublisherSetup.wixproj
index 86024cb..9be9bb3 100644
--- a/RemoteApplicationPublisherSetup/RemoteApplicationPublisherSetup.wixproj
+++ b/RemoteApplicationPublisherSetup/RemoteApplicationPublisherSetup.wixproj
@@ -64,11 +64,10 @@
-
-
-
-
-
+
+
+
+
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index 9167347..a843cce 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -11,6 +11,7 @@ pool:
variables:
#version: '1.0.0.$(Build.BuildId)'
+ semanticVersion: "1.0.0"
solution: '**/*.sln'
buildPlatform: 'x64'
buildConfiguration: 'Release'
@@ -26,6 +27,13 @@ steps:
script: 'env | sort'
displayName: 'Display environment variables'
+- task: PowerShell@2
+ inputs:
+ targetType: filePath
+ filePath: $(System.DefaultWorkingDirectory)\versionnumber.ps1
+ arguments: $(Build.SourcesDirectory) $(semanticVersion) $(Build.BuildId) $$(isPrerelease)
+ displayName: 'Setting build version'
+
- task: NuGetToolInstaller@1
- task: NuGetCommand@2
diff --git a/versionnumber.ps1 b/versionnumber.ps1
new file mode 100644
index 0000000..dfb50dc
--- /dev/null
+++ b/versionnumber.ps1
@@ -0,0 +1,46 @@
+[CmdletBinding()]
+Param(
+ [Parameter(Mandatory=$true, Position=0)]
+ [string]$SourceDir,
+ [Parameter(Mandatory=$true, Position=1)]
+ [string]$SemanticVersion,
+ [Parameter(Mandatory=$true, Position=2)]
+ [string]$BuildId,
+ [Parameter(Mandatory=$true, Position=3)]
+ [bool]$IsPrerelease
+)
+
+Write-Host "SemanticVersion = $SemanticVersion"
+Write-Host "BuildId = $BuildId"
+
+$local:BuildNumber = ($BuildId % 65535) # max value for version part on Windows is 65534
+Write-Host "BuildNumber = $($local:BuildNumber)"
+
+$local:PackageCodeMarker = "255.255.65534"
+$local:AssemblyCodeMarker = "255.255.65534.65534"
+$local:AssemblyVersion = "${SemanticVersion}.$($local:BuildNumber)"
+$local:PwShellVersion = "${SemanticVersion}.$($BuildId)"
+if ($IsPrerelease)
+{
+ $local:PackageVersion = "${SemanticVersion}-dev-$($local:BuildNumber)"
+}
+else
+{
+ $local:PackageVersion = $SemanticVersion
+}
+Write-Host "PackageCodeMarker = $($local:PackageCodeMarker)"
+Write-Host "AssemblyCodeMarker = $($local:AssemblyCodeMarker)"
+Write-Host "PackageVersion = $($local:PackageVersion)"
+Write-Host "AssemblyVersion = $($local:AssemblyVersion)"
+Write-Host "PwShellVersion = $($local:PwShellVersion)"
+
+Write-Host "Replacing version information in RemoteApplicationPublisher assembly info"
+$local:ProjectFile = (Join-Path $PSScriptRoot "RemoteApplicationPublisher\Properties\AssemblyInfo.cs")
+(Get-Content $local:ProjectFile -Raw).replace($local:AssemblyCodeMarker, $local:AssemblyVersion) | Set-Content -Encoding UTF8 $local:ProjectFile
+(Get-Content $local:ProjectFile -Raw).replace($local:PackageCodeMarker, $local:PackageVersion) | Set-Content -Encoding UTF8 $local:ProjectFile
+Write-Output "*****"
+Get-Content $local:ProjectFile
+Write-Output "*****"
+
+Write-Output "##vso[task.setvariable variable=VersionString;]$($local:AssemblyVersion)"
+Write-Output "##vso[task.setvariable variable=PwShellVersionString;]$($local:PwShellVersion)"