param ( [string]$version ) # Function to replace version in a file function Replace-Version { param ( [string]$filePath, [string]$regexPattern, [string]$replacement ) if (Test-Path $filePath) { (Get-Content $filePath) -replace $regexPattern, $replacement | Set-Content $filePath Write-Host "Updated $filePath" } else { Write-Host "File not found: $filePath" } } # Update SoraV2BatteryHelperSetup.vdproj $vdprojFile = "SoraV2BatteryHelperSetup\SoraV2BatteryHelperSetup.vdproj" $vdprojPattern = '(\s*)"ProductVersion" = "8:\d+\.\d+\.\d+"' $vdprojReplacement = '$1"ProductVersion" = "8:' + $version + '"' Replace-Version -filePath $vdprojFile -regexPattern $vdprojPattern -replacement $vdprojReplacement # Update AssemblyInfo.cs files $assemblyFiles = @( "SoraV2BatteryHelperSvc\Properties\AssemblyInfo.cs", "SoraV2BatteryHelperNotification\Properties\AssemblyInfo.cs" ) $assemblyVersionPattern = '(\s*)\[assembly: AssemblyVersion\("(\d+\.\d+\.\d+\.\d+)"\)\]' $assemblyFileVersionPattern = '(\s*)\[assembly: AssemblyFileVersion\("(\d+\.\d+\.\d+\.\d+)"\)\]' $assemblyVersionReplacement = '$1[assembly: AssemblyVersion("' + $version + '")]' $assemblyFileVersionReplacement = '$1[assembly: AssemblyFileVersion("' + $version + '")]' foreach ($assemblyFile in $assemblyFiles) { Replace-Version -filePath $assemblyFile -regexPattern $assemblyVersionPattern -replacement $assemblyVersionReplacement Replace-Version -filePath $assemblyFile -regexPattern $assemblyFileVersionPattern -replacement $assemblyFileVersionReplacement }